我正在做一个做一些矩阵数学的程序。幸运的是,代码逻辑不是给我错误的原因。
我正在使用以下代码来输出存储在二维数组中的矩阵:
void ouputMatrix(char arr[], int matrixRows, int matrixColumns) {
for (int a=0; a<matrixRows; a++) {
for (int i=0; i<matrixColumns; i++) {
cout << arr[a][i] << " ";
}
cout << endl;
}
cout << endl;
}
但是,当我尝试编译此代码时,会被告知:
“在函数'void outputMatrix(char *,int,int)'中:[错误]数组下标的类型'char [int]'无效。
错误类型向我提示,我缺少有关c ++数组语法的明显内容或类似内容,但我无法弄清楚。我究竟做错了什么?
问题是我试图将多维数组传递给函数,但使用的语法与1-d数组相同。由于数组的大小为100(根据我的问题,您可能无法知道该大小,所以对不起,)传递它的正确方法是:
void ouputMatrix(char arr[][100], int matrixRows, int matrixColumns);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句