代码如下:
char brr[1][1]={1};
bool solve(int X,int Y,char *arr){
brr[X][Y]='*';
arr[X][Y]='*'; //错误:invalid types 'char[int]' for array subscript
}
int main()
{
return 0;
}
我想把数组名作为实参,指针或者数组名作为形参,但是为什么brr不会报错,而arr会报错呢?如果我想在以上函数中对传入的arr进行修改,应该怎么做才可以呢?
bool solve(int X,int Y,char **arr)
二维数组**arr
这里定义就不一样。
char brr[1][1]是二维数组,char *arr是字符指针,你想使用arr[x][y]这种形式要申明成char **arr才行