首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下函数定义: void swap(int a, int& b) { int c=a; a=b; b=c; } 若执行语句序列 int x = 0, y = 1; swap(x, y); 则变量 x 和 y 的值分别是
有如下函数定义: void swap(int a, int& b) { int c=a; a=b; b=c; } 若执行语句序列 int x = 0, y = 1; swap(x, y); 则变量 x 和 y 的值分别是
admin
2021-09-05
33
问题
有如下函数定义:
void swap(int a, int& b) { int c=a; a=b; b=c; }
若执行语句序列
int x = 0, y = 1;
swap(x, y);
则变量 x 和 y 的值分别是
选项
A、0和0
B、0和1
C、1和0
D、1和1
答案
A
解析
参数传递有三种:
传值(value),传址(address),和传引用(reference)
传值时子函数(被调用者)复制父函数(调用者)传递的值,这样子函数无法改变父函数变量的值。函数swap的第一个参数就是传值调用,所以它的值不会改变
传址时父函数将变量的地址传递给子函数,这样子函数可以能过改写地址里的内容改变父函数中的变量
传引用则是一种看起来像传值调用,而实际上功能同传址一样的传递方式。子函数可以改写父函数的变量值。函数swap的第二个参数就是传引用调用,可以改变其值,所以执行完函数后,b值与a值相同,即都是0,A选项正确。
转载请注明原文地址:https://kaotiyun.com/show/HZfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
通过派生类的对象可直接访问其()。
下列关于输入输出流的叙述中,正确的是()。
下列叙述中正确的是()。
使用VC6打开考生文件夹下的源程序文件modil.cpp,该程序运行时有错误,请改正错误,使得程序通过运行。程序输出:5a}注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在∥
下列叙述中正确的是()。
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正其中的错误,使得程序正常运行,并使程序输出的结果为:sizeof(strl)=5sizeof(str2)=10sizeof(str3)=l
在下列字符中,不允许作为C++标识符的是()。
下面c++标识符中正确的是()。
代码编写阶段可进行的软件测试是
若字符指针P所指向的字符串为ˊˊabcdefgˊˊ,在执行语句()。char*ap=newchar[strlen(p)+1];之后,ap指向的字符数组的元素个数为
随机试题
下列哪项是早期食道癌可能出现的症状?()
“人生的阴影,是自己遮挡阳光造成的。”这句话意在说明()。
房地产开发企业不得采取()的方式销售商品房。
1号梁横向影响线的竖标值为______。当桥上作用的活载是汽车车轮,汽车荷载为公路-I级,在横向影响线的竖标值为η11=0.6,η15=-0.2时,1号梁的横向分布系数mcq,最接近的数值为______。
下列关于对公共政策的含义及其本质内容的表述中不正确的是()。
下列税收原则中属于税收的经济原则的有()。
Iconsidermyselfsomethingofanexpertonapologies.Aquiettemperhas【C1】______mewithplentyofopportunitiestomakethem.
下列关于财产清查的说法,正确的有()。
工资分配原则不包括()。
设有以下函数:voidfun(intn,char*s){……}则下面对函数指针的定义和赋值均是正确的是()。
最新回复
(
0
)