首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下函数定义: 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
2015-07-22
29
问题
有如下函数定义:
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/lkNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
要定义数组a,使得其中每个元素的数据依次为3,9,4,8,0,0,0,错误的定义语句是()。
有如下程序: #include<iostream> using namespace std; class A { public: A(){cout<<"A";} }; class B<public:
要定义一个具有5个元素的一维数组vect,并使其各元素的初值依次是30,50,-88,0和0,则下列定义语句中错误的是
下列叙述中正确的是
下面程序的输出结果是【】。#include<iostream>usingnamespacestd;classbase{protected:inta;public:bas
软件测试分4个步骤进行,即单元测试、集成测试、确认测试和【】。
下列打开文件的表达式中,错误的是
在结构化分析方法中,用于描述系统中所用到的全部数据和文件的文档称为【】。
在面向对象方法中,【 】描述的是具有相似属性与操作的一组对象。
下列符号中能够作为C++标识符的是
随机试题
严格按均匀的月剂量率控制的对象是
A、炙麻:黄B、九孔石决明C、绵茵陈D、江枳壳E、明天麻注明质地的药物是
检验检疫机构对代理报检单位实行年度审核制度。()
A公司持有B公司30%股权,对B公司生产经营具有重大影响,采用权益法核算对B公司的长期股权投资,以下哪些情形下A公司在B公司实现利润时可以B公司账面净利润为基础计算确认投资损益()。Ⅰ.A公司无法合理确定取得投资时B公司各项可辨认资产的公
全体公民放假1天的法定节日是()。
中石器时代的拉文特岩画主要有哪些特点?
与讲授法相比,布鲁纳提倡的发现法更关注()。
人民民主专政包括两方面内容,即对人民实行民主、对敌人实行专政,那么,现阶段对敌人实行专政主要表现在()。
从“发展才是硬道理”,到“科学发展观”的提出,从“让一部分人先富起来”,到“初次分配和再分配都要关注社会公平”,党的十七大对发展观、公平观的认识达到了一个新的高度。这表明()。
设z=xy+xf=______
最新回复
(
0
)