大可爱 发表于 2018-8-30 23:06:01

指针地址

本帖最后由 无符号整形 于 2018-8-31 15:07 编辑

char *pa = &a;
int *pb = &f;

总感觉这两语句怪怪的
右边&a求地址
左边*pa 求指针指向地址里面的数值
难道是要把地址赋值给数值?

claws0n 发表于 2018-8-30 23:16:24

本帖最后由 claws0n 于 2018-8-31 11:14 编辑

没错,指针所存储的资料为被指向的变量之地址
                                    内存
char a = 'A';         [&a    |65]
char *pa = &a;       [&pa|&a]
int f = 8;                [&f    |   8   ]
int *pb = &f;          [&pb|&f]

要解引用才会得到被指向的变量的值*pa = 'A' , *pb = 8;

shuofxz 发表于 2018-8-31 09:23:19

这行代码实际是个简略写法,对初学者来说很容易搞混
char *pa = &a;
和下面这个是等价的
char *pa;
pa = &a;
页: [1]
查看完整版本: 指针地址