大可爱 发表于 2018-9-5 11:47:53

C语言指针

本帖最后由 claws0n 于 2018-9-6 08:58 编辑

还是无法理解这条语句
int *p = &a;
这难道不是把地址赋值给数据? 感觉反了。

大可爱 发表于 2018-9-5 11:49:31

char *pa;
pa = &a;
虽然和这个等价

大可爱 发表于 2018-9-5 11:50:11

大可爱 发表于 2018-9-5 11:49
char *pa;
pa = &a;
虽然和这个等价

等价的形式都可以理解

claws0n 发表于 2018-9-5 11:56:06

大可爱 发表于 2018-9-5 11:50
等价的形式都可以理解

可以由不同的角度去理解
(char*) pa;    意思是pa 是一个指向字符型的指针
char (*pa);意思是 (*pa) 的数据类型是字符,所以 *pa == a

MachineGirl 发表于 2018-9-5 16:07:19

&a意思是变量a的存储地址
*p = &a的意思是生成一个指针 p    ,
这个指针指向a所存储的地址

船到桥头自然沉 发表于 2018-9-5 18:32:11

p是指针变量,p=&a;*有两个意思:1,int   *p中的* ,在这是起定义作用;2,其他位置的*是取值符
页: [1]
查看完整版本: C语言指针