1.指针变量的值是其他变量的地址,指针变量也有自己的地址:
#include <stdio.h> int main() { int* p=NULL; printf("&p=%p,p=%p/n",&p,p); int n=3; printf("&n=%p,n=%d/n",&n,n); p=&n; printf("&p=%p,p=%p/n",&p,p); return 0; }
对应的输出结果如下:
&p=0012FF44,p=00000000
&n=0012FF40,n=3
&p=0012FF44,p=0012FF40
可以清楚地看到指针变量p的地址一直是不变的,变得只是它的值(也就是它所指向的变量的地址)。
指针变量的值是一个地址,包括常见int,float,char,结构体,类,函数的地址等等,都是4个字节的地址值。

85

被折叠的 条评论
为什么被折叠?



