有以下程序 void fun(char*s){ char a[10]; strcpy(a,"STRING"); s=a;} main(){ char*p="PROGRAM"; fun(P);

admin2019-08-10  21

问题 有以下程序
    void fun(char*s){
     char a[10];
    strcpy(a,"STRING");
     s=a;}
     main(){
     char*p="PROGRAM";
     fun(P);
    printf("%s\n",p);}
    程序运行后的输出结果是(此处口代表空格)

选项 A、STRING□□□□
B、PROGRAM
C、STRING□□□
D、STRING

答案B

解析 函数fun的主要功能是把字符串"STRING",存放到字符数组a中,s指向该字符串,函数调用结束以后,释放s和a指向的空间。主函数调用fun(p),并不能更改p的值,因此p的指向没有改变。
转载请注明原文地址:https://kaotiyun.com/show/cgRp777K
0

最新回复(0)