C语言指针问题?

来源:百度知道 编辑:UC知道 时间:2024/05/11 18:44:56
int a ;
*p=&a;
p=&a;
p=&a;
请问*p=&a;p=&a;p=&a;这三个语名句中P代表的是什么?

p是一个指向int型变量的指针变量。*p = &a错了,除非声明可以这样,但是要有类型,比如声明一个指针:int *p = &a,这样才对,单独*p = &a是错的,除非声明的是int **p(也就是p是指向指针的指针,也就是二级指针),这样的话,*p = &a才是正确的。如果是p是一级指针的话,*p = &a是错误的,应该是*p = a,或者p = &a,前者的意思是指针变量的内容等于变量a的值,后者的意思是p的值是变量a的地址。