为您找到"
*p=&a,谁能帮我清楚的说一下,*p、p、&a和a之间的联系和区别。
"相关结果约100,000,000个
p=&a这语句只能出现在定义中,如 int a,b;int *p=&a;p = &b;(错误的!应该为p=&b)p 指的是指针变量p的内存值,则为 a &a中的 & 是求地址运算符,先得 变量a的内存地址,再赋给 p指针变量!任何一种...
因此,*p=a和p=&a是对的,其余是错的。在这里p是指针,而*p是变量,所以*p=a是对的。什么是指针,指针就是地址,因此p=&a是对的。这里最容易混淆的一点是:定义时的写法可以特殊一点。例如:int a=8; int *p=&...
p是一个指针变量,声明是这样 *p, 请记住int *是一个类型,叫做指向int型的指针。p = a; 是一个赋值过程,将p指向的内存赋值为a的值,也就是a的地址。p = a; 也是赋值,是将p指向a的内存,也就是p指向a了,...
int a=100, *p=&a;//p=&a,把a的地址赋给指针变量p,那就表示指针变量指向了变量a printf("%d",*p);输出*p,意思是输出p所指变量中的内容,也就是输出a变量的内容,即100 ...
int *p=a;此时指针变量p存有数组a的首地址printf("%d",p);为打印a[0]的地址 printf("%d",*p);这里是打印a[0]也即数字1 p=p+1;就是指针p指向下一个元素printf("%d",p);为打印a[1]的地址 printf("%d",...
1.一般来说*p=&a的表示方法是错的,*p=a和p=&a是正确的。2.*p=a的意思:将a的值赋给p指针指向的地址的值;3.p=&a的意思是:将a的地址赋给指针p;4.区别:*p是一个值;p是一个地址;两者完全不相同。5.*...
&a;p存的是int型变量的指,即p指针指向地址的内容,所以可*p = a; 当你用*p = &a时,编译器会认为指针的值表示了地址,编译报错。如果你真想这样表示,也可以,只需要将地址强转为int型,即 p = (int)&a;...
int *p,p=&a 为什么不继续把它进行拆解 int **p=&a ,就是 int *(*p),*p=a ,**p=&a,但是要知道指针存储的是地址,这句话是包含着指针初始化!!然后接着你可以继续想三级指针!指针就是这样的灵活 ...
不知道楼主说的是说明情况。所以几种可能的都说一下:测试代码 include "stdio.h"include "conio.h"main(){ int a=1;int *p=&a;int *q,*r;q=&a;r=&a;printf("p=%d,q=%d,r=%d",p,q,r);getch();} ...
int *p=&a;这一句定义了一个变量p,p是一个指向int型的指针,即p的数据类型是int*,而&a的数据类型也是int*。这条语句可以分写为 int *p;p=&a;所以这一句没问题。p=&a; 这一句是对(*p)进行赋值操作,(*p)的...