有以下程序: point(char *p){P+=3;) main() { char b[4]={’a’,’b’,’c’,’d’},*p=b; point(p);printf("%c\n",*p); } 程序运行后的输

admin2011-06-13  51

问题 有以下程序:    point(char *p){P+=3;)    main()    {  char b[4]={’a’,’b’,’c’,’d’},*p=b;    point(p);printf("%c\n",*p);    }    程序运行后的输出结果是(       )。

选项 A、a
B、b
C、c
D、d

答案A

解析 本题的考点是C语言的函数参数的传递方式(传值)。函数poret的形参是一个char型指针p,当调用point(p)时,将指针p的值传递给形参,函数point中的p+=3,并不影响主程序main中的p值,因此函数调用结束后,p仍指向b的首地址,输出*p的值应是字符a。
转载请注明原文地址:https://jikaoti.com/ti/DdB0FFFM
0

最新回复(0)