我认为在主程序中x把地址赋予了指针P,那么指针p的值应该是X的地址而不是X的值
首先了解fun函数的作用,fun的作用是交换地址,而不是交换值
其次int p = &x 表示p为&x,也就是p为x的地址,p表示x的值
int p.是指p是一个指向整型的指针,它的类型是int型.。
&x的结果是一个指针,是x的类型 即int 加一个*型的类型,即int .
p=&x.也就是相当于 intp=&x;
*p也就是等于 x.
p的值是x的地址
*p 这里的*是运算符,可以理解为取所存地址上的值
定义时: p的是表示该变量的类型是指针,而p中存的则是所指元素的地址
访问时: p返回地址,*则让程序进一步反回了该地址所代表的元素
(望采纳,谢谢)
p 和 *p 是不同的
指针p的值是x的地址
在p前面加*号是获取p指针指向的地址中的值(也就是x的值).
要输出地址用%p,输出int用%d