以下程序段中,能够通过调用函数fun,使main函数中的指针变量p指向一个合法的整型单元的是______。

admin2010-09-05  20

问题 以下程序段中,能够通过调用函数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改变的是其指向的内容,而不是其地址。
转载请注明原文地址:https://kaotiyun.com/show/bOWp777K
0

最新回复(0)