有以下程序 #include typedef struct { int b, p; } A; void f(A c) /* 注意:c是结构变量名 */ { int j; c.b += 1; c.p+=2; } main() { int i; A a={1

admin2020-11-27  27

问题 有以下程序
#include
typedef struct { int b, p; } A;
void f(A c) /* 注意:c是结构变量名 */
{ int j;
c.b += 1; c.p+=2;
}
main()
{ int i;
A a={1,2};
f(a);
printf("%d,%d\n", a.b, a.p);
}
程序运行后的输出结果是( )。

选项 A、1,2
B、2,4
C、1,4
D、2,3

答案A

解析 考查结构体变量作为函数实参整体传递,也是一种值传参,形参的变化不能影响到实参,所以调用函数f(a)对a中的数据没有影响,输出结果为1,2,答案选A)。
转载请注明原文地址:https://kaotiyun.com/show/Dd3p777K
0

最新回复(0)