C语言 指针中*p=&n; ,和*p,p=&n;,有什么区别和关系呢?在什么情况下可以用*p=&n呢
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/10/08 02:21:31
C语言 指针中*p=&n; ,和*p,p=&n;,有什么区别和关系呢?在什么情况下可以用*p=&n呢
你要搞清两个概念:指针在定义和使用时的差别.
一个是定义的时候,int *p = &n,那么说明p是一个地址,它指向n这个变量.
一个是使用时 *p=&n,那么说明p是二级指针,即它指向地址的地址,那么*p仍然是地址,它指向n这个变量.
再问: 为什么在使用的时候p是二级指针?
再答: 定义的时候 *号代表 :类型说明符,说明它是一个存放地址的变量,即指针。 而使用的时候,*表示对p取目标,是一个运算符。*p=&n,&n代表对变量n取地址,那么这句话相当于: p的目标是一个指针,那p不就是二级指针了吗?
一个是定义的时候,int *p = &n,那么说明p是一个地址,它指向n这个变量.
一个是使用时 *p=&n,那么说明p是二级指针,即它指向地址的地址,那么*p仍然是地址,它指向n这个变量.
再问: 为什么在使用的时候p是二级指针?
再答: 定义的时候 *号代表 :类型说明符,说明它是一个存放地址的变量,即指针。 而使用的时候,*表示对p取目标,是一个运算符。*p=&n,&n代表对变量n取地址,那么这句话相当于: p的目标是一个指针,那p不就是二级指针了吗?
C语言中指针*p与*p-'0'和*p+'0'有什么区别
来高手!求解! C语言中,指针 定义int a,*p=&a;中的*p=&a 和表达式中的 p=&a; 有什么区别? 是不
C语言指针,int a=1; int *p; 其中p=&a和*p=&a有什么区别?p的值是否相同?
在C语言中,*P=*Q,*P=&Q,*P=Q有什么区别?
1P+N 和2P+N的漏保开关分别用在什么情况下?
C语言中*S=&P和S=*P有什么区别吗?求详解.
在C语言中指针函数*p=&q,“*”和“&”什么作用?
C语言中P=m!/n!(m-n)!
C语言,*p;*p=&a;*p; p=&a;这两者有什么区别?
C语言中的 (**p)f()和**p()有什么区别?
C指针问题迷惑中,(*p)[4]和*p到底有什么区别?
若m+n=p+q,m n p q ∈N* ,在等差数列中有am+an=ap+aq,那在等比数列中呢?