A-A+
有以下程序: void fun(char *a char*b) { a=b;(*a)++;
问题详情
有以下程序: void fun(char *a, char*b) { a=b;(*a)++;) main() { char c1="A",c2="a", *p1, *p2; p1=&c1; p2=&c2; fun(p1,p2); printf("%c%cn", c1,c2); } 程序运行后的输出结果是 ______。
A.Ab
B.aa
C.Aa
D.Bb请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:A
解析:本题中函数fun的形参是指针变量,因此实参与形参之间是地址传递,即形参的改变可以影响实参。main函数中p1指向c1,p2指向c2,函数调用语句fun(p1,p2)的功能是将p2所指存储单元的内容的值加1,即将c2的值加1得c2='b',故printf函数的输出结果为Ab。