C++里面数组怎么引用
发布网友
发布时间:2022-05-25 11:27
我来回答
共5个回答
热心网友
时间:2023-10-09 12:08
可以的,可以将“对数组的引用”当成函数参数——即将整个数组传递给函数,
不用将数组长度作为第二个参数。
具体实现如下:
//用模板实现,Print函数可以打印任意基础类型的任意长度数组。
template<class TYPE, size_t SIZE>
void Print(TYPE (&arr)[SIZE]){
for(int i=0;i<SIZE;++i){
cout<<*(arr+i)<<" ";
}
cout<<endl;
}
int main(){
int iarr[]={1,2,3,4,5};
float farr[]={1.1, 5.5,9.9};
string sarr[]={"first","second"};
Pirnt(iarr);
Print(farr);
Print(sarr);
return 0;
}
//----------------------------------------------------
输出结果:
1, 2, 3, 4, 5
1.1, 5.5, 9.9
first second
热心网友
时间:2023-10-09 12:08
1、数组名其实等同于一个常量指针,直接使用数组名即可引用。
2、直接用数组名字调用即可。
如:
int a[10]={0,1,2,3,4,5,6,7,8,9];//定义一个数组变量并赋初值
可以用a[3]、a[8]分别调用第3个元素(2)和第8个元素(7),如:
int b;//定义一个整形变量
可以用:
b=a[3]+a[8];
执行上面以后b的值会成为:9(2+7=9)
热心网友
时间:2023-10-09 12:08
C++语法规定:引用方式不能用于数组。如果要达到相当于引用的效果,使用指针。
把dfs(int &a[100][100])改成dfs(int(*a)[100])就可以了。
热心网友
时间:2023-10-09 12:09
数组是不能引用的,你可以查查资料或翻翻书!
热心网友
时间:2023-10-09 12:10
int *a = new int[100][100]
就可以了