问题 单项选择题

若有定义: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在此代表一整型变量),这也是不允许的,地址值不能直接转换为一个整数。

单项选择题 A1/A2型题
问答题 简答题