Computer >> 컴퓨터 >  >> 프로그램 작성 >> C 프로그래밍

C에서 2D 배열을 매개변수로 전달하는 방법은 무엇입니까?


2차원 배열은 C의 함수에 매개변수로 쉽게 전달할 수 있습니다. 두 배열 차원이 전역적으로 지정될 때 이를 보여주는 프로그램은 다음과 같습니다.

예시

#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:\n");
   for (i = 0; i < R; i++) {
      for (j = 0; j < C; j++) {
         printf("%d ", a[i][j]);
      }
      printf("\n");
   }
   func(a);
   printf("Modified 2-D array is:\n");
   for (i = 0; i < R; i++) {
      for (j = 0; j < C; j++) {
         printf("%d ", a[i][j]);
      }
      printf("\n");
   }
   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