首先,我们直接看一段代码:

#include

int main()

{

int a; //声明变量 a ;

int *pa = &a; //声明int类型的指针 pa , 指向 int a ;

a = 2; // 向 a 赋值;

printf("a = %d\n",a); //打印出 a的值;

printf("pa = %d\n",pa); //打印出 pa的值;

printf("*pa = %u\n",*pa); //打印出 *pa 的值;

return 0;

}

在这段代码中,我们声明了 变量a 以及指向它的 指针 pa ,在这段代码的声明中 可以看到在 声明指针时我们使用到了星号(*) 来声明指针。

那么关于取值是是否需要带星号(*),我们看上面下半段的 printf 的函数。

在打印结果中:

a 的值 是 2 pa 的值是 6487572 *pa 的值 是 2

由此 可知 : 加星号时 访问的是该地址 也就是 变量a ,不加星号则为该地址(6487572)

最终可以得知

声明时 直接访问 需要星号 *

查看地址是 不需要星号 *

Copyright © 2088 世界杯乒乓球赛_2014世界杯十佳球 - mz286.com All Rights Reserved.
友情链接