C语言中*的位置

C语言中*的位置有如下两种书写方式:

  • int *a;  靠近变量
  • int* a;  靠近变量类型

两者意思相同且后者看上去更为清楚(a被声明为类型为 int* 的指针)。

但是,这并不是一个好技巧。

原因如下:

int* b, c, d;

一般以为这条语句把所有三个变量声明为指向整形的指针, 但事实上并非如此。星号实际上只是表达式 *b 的一部分, 只对这个标识符有用。

b 是一个指针, 但其余两个变量只是普通的整形。

要声明三个指针, 正确的语句如下:

int *b, *c, *d;

转载:https://www.cnblogs.com/qinfengxiaoyue/archive/2013/02/02/2889717.html

posted @ 2022-05-24 21:08  JRS077  阅读(791)  评论(0编辑  收藏  举报