来看看吧 哥们 这个不太懂我

来源:百度知道 编辑:UC知道 时间:2024/05/17 01:08:36
#include<stdio.h>
void main()
{
int i=10,*p,*a;
a=&i;
p=a;//这里
printf("%d",p);
}
a是把自己的值给了p么 也就是说把i的地址个了P
金山 大哥 你讲类太深了

i的地址,就是一个4个字节的数值,相当于一个unsigned long类型的值
所以,p=a;就是直接把a的值(可以看成unsigned long类型的),赋值给p

补充:
你可以把地址p用 printf("%p",p);的语句输出出来
你就可以看到它是0x0012ffff之类的一个4字节的数了
你也可以把地址p强制转换为long类型的变量,如:
long n=(long)p;
然后,看看n的值,可以用10进制,或者16进制看

你说的是对的。正解。