C言語で2次元の空配列を作成の方法

C言語では、空の2次元配列を以下のように作れます。

  1. ポインタのポインタ (つまり、2 次元配列のポインタ) を宣言します。
  2. 2次元配列の行を格納するメモリを malloc() 関数で確保
  3. 各行に対して、malloc()関数を使用して、二次元配列の列を格納するためのメモリを確保する。

以下にサンプルコードを示します。

#include <stdio.h>
#include <stdlib.h>

int main() {
    int rows, cols, i, j;

    printf("Enter the number of rows: ");
    scanf("%d", &rows);
    printf("Enter the number of columns: ");
    scanf("%d", &cols);

    // 创建二维数组
    int** arr = (int**)malloc(rows * sizeof(int*));
    for (i = 0; i < rows; i++) {
        arr[i] = (int*)malloc(cols * sizeof(int));
    }

    // 打印二维数组
    for (i = 0; i < rows; i++) {
        for (j = 0; j < cols; j++) {
            printf("%d ", arr[i][j]);
        }
        printf("\n");
    }

    // 释放内存
    for (i = 0; i < rows; i++) {
        free(arr[i]);
    }
    free(arr);

    return 0;
}

このコードでは、まずユーザーに行数と列数の入力を促します。その後、malloc()関数を使用して、2 次元配列の行と列を格納するためにメモリを割り当てます。最後に、2 次元配列の内容を表示し、割り当てられたメモリを解放します。

bannerAds