สามารถส่งอาร์เรย์ 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