问题
单项选择题
若有定义:int k,*q;,则下列各选项中赋值表达式正确的是
A.q=(&k+1)
B.q=&k
C.q=k
D.*q=&k
答案
参考答案:B
解析: 本题考核指针的赋值操作。A) 选项中,&k表示变量k在内存中的地址,而后面的1是整型常量,所以此选项不正确。C) 选项中,是把整型变量的值直接赋给指针变量q,由于赋值没有兼容性,所以这是错误的。D) 选项中,企图把k在内存中的地址赋给一个整型变量(*q在此代表一整型变量),这也是不允许的,地址值不能直接转换为一个整数。