单选题
以下程序段中,能够通过调用函数fun,使main函数中的指针变量p指向一个合法的整型单元的是______。
A、
main()
int *p;
fun(p);
……
int fun(int *p)
int s; p=&s;
B、
main()
int *p;
fun(&p);
……
int fun(int **p)
int s; *p=&s;
C、
# include<stdlib. h>
main()
int *p;
fun(&p);
……
int fun(int **p)
*p=(int *)malloc(2);
D、
# include<stdlib. h>
main()
int *p;
fun(p);
……
int fun(int *p)
p=(int
*)malloc(sizeof(int));
【正确答案】
C
【答案解析】
[解析] 选项A和B中p指向局部变量s的地址,退出函数fun后,该局部变量也被释放,不能使p指向一个整型单元地址;选项D中通过malloc函数分配一个整型地址,但不能被返回到main函数中,因为指针参数指向的地址不能被改变;选项C中,p是指向指针的指针,函数fun改变的是其指向的内容,而不是其地址。
提交答案
关闭