C言語における2次元配列ポインタの使用方法
C言語では、2次元配列はポインタでアクセスし操作できます。以下は2次元配列ポインタを使用する一般的な操作の一部です。
- 2次元配列ポインタの宣言:
int (*ptr)[n]; // 声明一个指向有n列的int型二维数组的指针
- 二次元の配列ポインタを確保し、初期化する。
int (*ptr)[n] = malloc(m * sizeof(int[n])); // 分配m行n列的int型二维数组内存,并将指针赋值给ptr
// 初始化二维数组
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
ptr[i][j] = 0; // 对二维数组进行赋值操作
}
}
- 二次元配列の要素にアクセスする:
int value = ptr[i][j]; // 获取二维数组第i行第j列的元素值
ptr[i][j] = value; // 设置二维数组第i行第j列的元素值
- 二次元配列ポインタによって指し示されるメモリを解放する:
free(ptr); // 释放ptr指向的内存
2次元配列ポインタは使用前にメモリを確保し、使用後はメモリを解放して、メモリリークを避ける必要があります。また、2次元配列の行数と列数はポインタ宣言時の行数と列数と一致させる必要があり、要素にアクセスするときは境界を越えないように注意する必要があります。