以下示例声明了一个指向 float 的指针:

float *powerPtr;

因为 powerPtr 变量的类型是指向 float 的指针,所以读者可能会将代码写成:

float* powerPtr;

这样写没有问题,编译也会通过,但不是好的代码风格。

C语言允许在一行代码中声明多个变量。例如,要声明变量 x、y和 z,可以将代码写成:

float x, y, z;

以上三个变量的类型都是 float。

再看下面这段代码,b 和 c 变量分别是什么类型?

float* b, c;

答案可能会出乎读者的意料。b 是指向 float 的指针,但 c 的类型却是 float。如果需要将 a 和 b 都声明为指针,就必须在每个变量前都加上*:

float *b, *c;

在这种情况下,将 * 写在变量名这边,能让声明看上去更清楚。

摘录自《Object-C 编程》122页。