问题
单项选择题
以下程序输出结果是( ): #include<iostream> using namespace std; void add(int X,int y,int *z) { *z=y+x; } int main() { int a,b,c; add(8,4,&a); add(6,a,&b); add(a,b,&c); cout<<a<<","<<b<<","<<c<<end1; return 0;
A.12,10,14
B.12,18,30
C.12,6,18
D.12,14,30
答案
参考答案:B
解析: 由主函数main入手,调用add函数,其中第三个参数为引用,即传值为地址。当add函数中第三个参数改变时,主函数中这个值也会改变。那么第一个add调用后a=12,所以第二个调用中a=12。调用后b=18。那么第三个调用后c=30。