若有一些定义和语句
问题描述:
若有一些定义和语句
#include
int a=4,b=3,*p,*q,*w;
p=&a;q=&b;w=q;q=NULL;
则以下选项中错误的语句是:
A.*q=0 B.w=p C.*p=a D.*p=*w
答
A
q是空指针,不能对其操作.可不可以详细点呢?我不知道B和D是怎么回事?B,给w赋值p,所以w和p指向了同一个单元。即*w就是*pD,把*w赋值给*p,即把w指向的单元赋值了p指向单元中的内容。在本例中就等价于a=b;