二维数组传参时,显示argument of type A is incompatible with parameter of type B的原因
时间: 2023-12-01 09:02:46 浏览: 81
kettle变量参数设置
这个错误通常是因为传递的参数类型和函数定义的参数类型不匹配导致的。在C语言中,二维数组在传递时需要指定列数,因此在函数定义中,需要明确指定每一行的列数,以便正确地访问数组元素。如果传递的数组参数没有指定列数,或者指定的列数与函数定义中不匹配,则会出现这个错误。
例如,如果函数定义如下:
```
void func(int arr[][3], int rows) {
// ...
}
```
那么传递二维数组参数时,需要保证列数为3,否则会出现类型不兼容的错误。如果传递的数组参数类型是不正确的,例如传递一个一维数组或者指针类型的参数,也会导致这个错误。
阅读全文