C言語で二次元配列の行と列を定義する方法
C 言語では、二次元配列の行と列は宣言時に指定する必要があります。以下に例を示します。
- 2次元の整数型の3行4列の配列を定義する:
int arr[3][4];
- 2行3列の2次元浮動小数点型配列を定義する:
float arr[2][3];
- 5行2列の文字型二次元配列を定義する:
char arr[5][2];
配列の行と列の大きさは定数にする必要があり、変数では指定できないことに注意してください。配列の行と列を動的に定義したい場合は、malloc 関数などの動的メモリ割り当て方式を使用できます。
int rows = 3;
int cols = 4;
int **arr = malloc(rows * sizeof(int *));
for (int i = 0; i < rows; i++) {
arr[i] = malloc(cols * sizeof(int));
}
変数 rows と cols の値に基づき、2 次元配列の行、列を動的に定義できます。ただ1 つ注意が必要なのは、使用後はメモリ解放を実行してメモリリークを避ける必要があることです。
for (int i = 0; i < rows; i++) {
free(arr[i]);
}
free(arr);