如何在 C 中將 2D 陣列作為引數傳遞?


在 C 中,2D 陣列可以輕鬆地作為引數傳遞給函式。當陣列維數都在全域性中指定時,演示此操作的程式如下。

示例

 線上演示

#include <stdio.h>
const int R = 4;
const int C = 3;
void func(int a[R][C]) {
   int i, j;
   for (i = 0; i < R; i++)
   for (j = 0; j < C; j++)
   a[i][j] += 5; ;
}
int main() {
   int a[R][C];
   int i, j;
   for (i = 0; i < R; i++)
   for (j = 0; j < C; j++)
   a[i][j] = i+j;
   printf("Initial 2-D array is:
");    for (i = 0; i < R; i++) {       for (j = 0; j < C; j++) {          printf("%d ", a[i][j]);       }       printf("
");    }    func(a);    printf("Modified 2-D array is:
");    for (i = 0; i < R; i++) {       for (j = 0; j < C; j++) {          printf("%d ", a[i][j]);       }       printf("
");    }    return 0; }

輸出

上述程式的輸出如下。

Initial 2-D array is:
0 1 2
1 2 3
2 3 4
3 4 5
Modified 2-D array is:
5 6 7
6 7 8
7 8 9
8 9 10

更新於: 2020-06-26

981 人次閱讀

開啟你的 職業生涯

完成課程,獲得認證

立即開始
廣告
© . All rights reserved.