C++入门经典-例5.16-输出引用】的更多相关文章

1:如不加特殊说明,一般认为引用指的都是左值引用.引用实际上是一种隐式指针,它为对象建立一个别名,通过操作符&来实现,引用的形式如下: 数据类型 & 表达式: 例如: int a=10; int & ia=a; ia=2; 上面的程序定义了一个引用变量ia,它是变量名a的别名,对ia的操作与对a的操作完全一样.“ia=2”把2赋给a,“&ia”返回a的地址.执行“ia=2”和执行“a=2”等价. 使用引用的说明如下: (1)一个C++引用被初始化后,无法使用它再去引用另一个…
1:使用字面值(如1.3.15f.true),或者表达式等临时变量作为函数实参传递时,按左值引用传递参数会被编译器阻止.而进行值传递时,将产生一个和参数同等大小的副本.C++11提供了右值引用传递参数,不申请局部变量,也不会产生参数副本. // 5.20.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostream> using namespace std; static float global = 1.11…
1:在C++中,函数参数的传递方式主要有两种,即值传递和引用传递.值传递是指在函数调用时,将实际参数的值赋值一份传递到调用函数中,这样如果在调用函数中修改了参数的值,其改变将不会影响到实际参数的值.而引用传递则恰恰相反,如果函数按引用方式传递,那么在调用函数中修改了参数的值,其改变会影响到实际参数. 示例代码如下: // 5.18.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostream> using na…
1:右值引用的定义: 类型 && i=被引用的对象: 左值与右值的区别在于,右值是临时变量,例如,函数的返回值,并且无法被改变. 当右值引用被初始化后,临时变量消失. 代码如下: // 5.17.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostream> int get() { ; return i; } int main() { ; // int &i = get()+4; //出…
1:代码如下: // 2.11.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostream> using namespace std; void main() { ,y=-400.00; cout << x <<' '<< y << endl;//输出x,空格,y cout.setf(ios::showpoint); //强制显示小数点和无效0 cout <…
1:以a[4][3]为例 a代表二维数组的地址,通过指针运算符可以获取数组中的元素 (1)a+n代表第n行的首地址 (2)&a[0][0]既可以看作第0行0列的首地址,同样也可以被看作是二维数组的首地址.&a[m][n]就是第m行n列元素的地址 (3)&a[0]是第0行的首地址,当然&a[n]就是第n行的首地址 (4)a[0]+(n-1)表示第0行第n个元素 (5)*(*(a+n)+m)表示第n行第m列 (6)*(a[n]+m)表示第n行第m列元素 2:代码如下: // 6…
1:引用传递参数与指针传递参数能达到同样的目的.指针传递参数也属于一种值传递,其传递的是指针变量的副本.如果使用指针的引用,就可以达到在函数体内改变指针地址的目的.运行代码如下: // 5.19.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostream> using std::cout; using std::endl; ;//静态全局变量 void getMax(int* &p)//指针的引用 {…
1:代码如下: // 2.10.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostream> using namespace std; void main() { ; double y=-3.1415; cout << "x="; cout.width();//输出字符串的宽度为10 cout << x; cout << "y=";…
1:代码如下: // 3.25.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostream> using namespace std; int main(int argc, _TCHAR* argv[]) { //若直接使用for循环遍历1773-2012年,则需要执行240次判断. int year; //1773开始的第一个闰年 ;//代表从何年开始 ;//代表从何年结束 //其实可以将以下for循环条件…
1:代码如下: // 3.23.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iomanip> #include <iostream> using namespace std; void main(void) { int i,j; i=; j=; ;i<;i++) { ;j<i+;j++) cout << i << ) << i*j ;//set(n)设…