问题 单项选择题

若有说明:int *p,m=5,n;以下正确的程序段是( )。

A.p=&n;scanf("%d",&p);

B.p=&n;scanf("%d",*p)

C.scanf("%d",&n);*p=6;

D.p=&n;*p=m;

答案

参考答案:D

解析: “&”是求址运算符,“*”是指针变量说明符。选项A) ,B) 应改为scanf("%d", p);选项C) 中指针变量p未指向一确定的内存单元,不能为其赋值,这样做很危险,建议不使用。

多项选择题
填空题