有以下程序 #include int k=5; void f(int *s) { *s=k; } main() { int m=3,*p=&m; f(p); printf("%d,%d", m, *p); } 程序的运行结果是( )。

admin2015-07-28  20

问题 有以下程序
#include
int k=5;
void f(int *s)
{ *s=k; }
main()
{ int m=3,*p=&m;
f(p);
printf("%d,%d", m, *p);
}
程序的运行结果是( )。

选项 A、5,5
B、3,3
C、3,5
D、5,3

答案A

解析 考查地址传参。地址传参过程中形参和实参指向同一个地址空间,两者的改变保持同步。被调函数f()将k值赋给了指针s指向的变量,所以函数调用结束之后,m和*p均为5,答案选A。
转载请注明原文地址:https://kaotiyun.com/show/4OJp777K
0

最新回复(0)