c语言怎么传入二维数组

avatar
作者
猴君
阅读量:0

在C语言中,可以通过以下两种方式传入二维数组:

  1. 作为函数参数传递:可以将二维数组作为函数的参数传递给函数。在函数定义时,需要指定数组的行数和列数,如下所示:
void myFunction(int arr[][3], int rows, int cols) {     // 函数体 }  int main() {     int myArray[2][3] = {{1, 2, 3}, {4, 5, 6}};     myFunction(myArray, 2, 3);     return 0; } 

在上面的例子中,myArray是一个2行3列的二维数组,通过myFunction函数传递给函数。

  1. 使用指针传递:可以将二维数组的首地址作为指针传递给函数,然后在函数内部通过指针的形式来访问数组元素。如下所示:
void myFunction(int *arr, int rows, int cols) {     for (int i = 0; i < rows; i++) {         for (int j = 0; j < cols; j++) {             int value = *(arr + i * cols + j);             printf("%d ", value);         }         printf("\n");     } }  int main() {     int myArray[2][3] = {{1, 2, 3}, {4, 5, 6}};     myFunction((int *)myArray, 2, 3);     return 0; } 

在上面的例子中,myArray数组首地址被转换为int*类型,并传递给myFunction函数。在函数内部,通过指针的形式访问数组元素。

这两种方法都可以传递二维数组给函数,选择哪种方法取决于实际情况和个人偏好。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!