続いて2次元配列の受け渡しについて説明します。
基本的には1次元配列と同じ渡し方になります。
前回と同じように、2次元配列の中身を表示するShowArrayという関数を作ります。
#include <stdio.h> #define ROW 2 #define COL 3 void ShowArray(int data[ROW][COL]); int main(void) { int data[ROW][COL] = { {2, 5, 8}, {3, 6, 9}, }; ShowArray(data); return 0; } void ShowArray(int data[ROW][COL]) { int i; int j; for (i = 0; i < ROW; i++) { for (j = 0; j < COL; j++) { printf("%2d", data[i][j]); } printf("\n"); } } |
<実行結果>
2 5 8 3 6 9 続行するには何かキーを押してください・・・
1次元配列と同じく、引数に配列の
型 配列名(何でも良い) 要素数(次元数分)
を書けば良いです。
渡された関数内では、添え字を2つ使って2次元配列にアクセス出来ます。
また、2次元配列もアドレス渡しのため、関数内でデータを書き換えると元データに影響が出ます。
配列を引数にする際の細かい話は「引数としての配列」で書きます。