C++数组引用
一、数组引用
C++数组的引用:
引用即别名这样比指针传地址方便多了 形参中的(&a)[10]可以就看做a数组的别名,肯定要指定数组大小,如果没有后面的数组大小,天知道是变量还是数组 普通传值和引用传值对比: 数组普通传值:a-->a[10] (或a[]) 数组引用传值:a-->(&a)[10]变量普通传值:a-->a变量引用传值:a-->(&a) 类比一下,很好理解
二、代码实例
1 /* 2 C++数组的引用: 3 引用即别名 4 这样比传地址方便多了 5 形参中的(&a)[10]可以就看做a数组的别名,肯定要指定数组大小,如果没有后面的数组大小,天知道是变量还是数组 6 普通传值和引用传值对比: 7 数组普通传值:a-->a[10] (或a[]) 8 数组引用传值:a-->(&a)[10] 9 变量普通传值:a-->a10 变量引用传值:a-->(&a) 11 类比一下,很好理解 12 13 测试结果:14 0 0 0 0 0 0 0 0 0 015 0 1 2 3 4 5 6 7 8 9 16 */17 18 #include19 using namespace std;20 void test(int a[10]);// 数组普通传值,用于打印数组a的值 21 void readData(int (&a)[10]); //数组引用传值:将a数组赋值为0--9 22 void printData(int (&a)[10]); //数组引用传值:用于打印数组a的值 23 void test(int a[10]){ // 数组普通传值,用于打印数组a的值 24 for(int i=0;i<10;i++)25 {26 printf("%d ",a[i]);27 }28 printf("\n");29 } 30 void readData(int (&a)[10]){ //数组引用传值:将a数组赋值为0--9 31 for(int i=0;i<10;i++)32 {33 a[i]=i;34 }35 }36 void printData(int (&a)[10]){ //数组引用传值:用于打印数组a的值 37 for(int i=0;i<10;i++)38 {39 printf("%d ",a[i]);40 }41 }42 int main(){43 int a[10]={ 0}; //为a数组中的每一个赋初值为044 test(a); // 数组普通传值,用于打印数组a的值 45 readData(a);//数组引用传值:将a数组赋值为0--9 46 printData(a);//数组引用传值:用于打印数组a的值 47 48 return 0;49 }
三、测试结果
测试结果:
0 0 0 0 0 0 0 0 0 00 1 2 3 4 5 6 7 8 9