我注意到有些人使用下面的符号来声明指针变量。
(a) char* p;
而不是
(b) char *p;
我使用(b)。符号(a)背后的理性是什么? 表示法(b)对我来说更有意义,因为字符指针本身不是一种类型。相反,类型是字符,变量可以是指向该字符的指针。
char* c;
这看起来像是有一个 char * 类型,而变量 c 就是这个类型。但实际上类型是 char,* c (c 指向的内存位置)就是这种类型(char)。如果同时声明多个变量,这种区别就变得明显了。
char* c, *d;
这看起来很奇怪。C 和 d 都是指向字符的相同类型的指针。在这里,因为下一个看起来更自然。
char *c, *d;