简单几行代码彻底领悟c指针
#include <stdio.h>int main()
{
int* p;
p = &p;//可以赋值,因为&p是一个地址,而p就是被申明为用来存放一个地址的,所以两者大小匹配。但类型不匹配,想明白这一点脑子要稍微绕一绕。通了就彻底通了。
printf("&p=%p\n", &p);
printf("p=%p\n", p);
printf("*p=%x\n", *p);
return 0;
}
没了?
可以描述得更加清晰吗? 数据是人民,它占据一定的空间(如河南,湖北)
指针本身也是数据,属于人民(同样占据一定的空间,如河南,湖北),
但指针还是人民代表(指向人民的空间,如河南人民代表,湖北人民代表)
:lol:hug::em17: 本帖最后由 爻易 于 2016-12-14 10:24 编辑
代表再选举出代表(代表的代表),就是二级指针了,还可以继续类推下去。。。但超过三级的较少(一般三个代表就到顶了):em02: 楼主例子:
#定义 代表 &
人民型 *自己;
自己 = 代表 自己; 还真是够绕的啊,谢谢楼主! 还真是够绕的啊,谢谢楼主!:mrgreen:
页:
[1]