溫馨提示×

c語言怎么傳遞二維數(shù)組

小億
199
2023-11-28 10:57:13
欄目: 編程語言

在C語言中,可以通過指針來傳遞二維數(shù)組。以下是兩種常見的方式:

  1. 傳遞數(shù)組的指針:
void func(int (*arr)[3], int rows) {
    for (int i = 0; i < rows; i++) {
        for (int j = 0; j < 3; j++) {
            printf("%d ", arr[i][j]);
        }
        printf("\n");
    }
}

int main() {
    int arr[2][3] = {{1, 2, 3}, {4, 5, 6}};
    func(arr, 2);
    return 0;
}
  1. 傳遞指向指針數(shù)組的指針:
void func(int **arr, int rows, int cols) {
    for (int i = 0; i < rows; i++) {
        for (int j = 0; j < cols; j++) {
            printf("%d ", arr[i][j]);
        }
        printf("\n");
    }
}

int main() {
    int arr[2][3] = {{1, 2, 3}, {4, 5, 6}};
    int *ptr[2] = {arr[0], arr[1]};
    func(ptr, 2, 3);
    return 0;
}

注意:在第二種方式中,需要將二維數(shù)組轉(zhuǎn)換為指針數(shù)組,即將二維數(shù)組的每一行的首地址存放在指針數(shù)組中。

0