C言語における動的配列の作成と使用方法

ポインタと動的メモリ確保の関数を使うと動的配列が実現できます。以下に動的配列を作成・利用するステップを示します。

  1. 動的配列のアドレスを格納するためのポインタ変数を宣言します。例: int* arr;
  2. 動的メモリ領域を確保するmalloc()関数を使用して、配列のためのメモリ空間を割り当て、返されるポインタをポインタ変数に代入する: 例: arr = (int*)malloc(n * sizeof(int)); ここで, nは配列のサイズで, sizeof(int)は各要素のサイズである。
  3. ポインタを使用して配列の要素にアクセスして操作します。たとえば、arr[0] = 10; を使用すると、配列の最初の要素に 10 が代入されます。
  4. 配列を使用した後は、必ずfree()関数でメモリ空間を解放し、メモリーリークを防ぐ必要があります。例えば、free(arr);

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

#include <stdio.h>
#include <stdlib.h>
int main() {
int n, i;
int* arr;
printf("请输入数组的大小:");
scanf("%d", &n);
// 分配内存空间
arr = (int*)malloc(n * sizeof(int));
// 给数组赋值
for(i = 0; i < n; i++) {
arr[i] = i + 1;
}
// 输出数组元素
printf("数组元素为:");
for(i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
// 释放内存空间
free(arr);
return 0;
}

このコードは、まずユーザーからの配列のサイズの入力を取得し、次に動的にメモリ領域を割り当て、配列に値を代入し、次に配列の要素を出力し、最後にメモリ領域を解放します。

bannerAds