在C語言中,可以使用指針和malloc函數來實現動態數組。
動態數組可以根據需要在運行時分配內存空間,并根據需求調整大小。
以下是一個簡單的示例,演示如何實現動態數組:
#include <stdio.h>
#include <stdlib.h>
int main() {
int *arr; // 定義一個指向整型的指針
int size;
printf("請輸入數組的大小: ");
scanf("%d", &size);
// 分配內存空間
arr = (int*)malloc(size * sizeof(int));
// 檢查內存分配是否成功
if (arr == NULL) {
printf("內存分配失敗\n");
return 1;
}
// 輸入數組元素
printf("請輸入%d個整數: ", size);
for (int i = 0; i < size; i++) {
scanf("%d", &arr[i]);
}
// 輸出數組元素
printf("數組元素為: ");
for (int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
printf("\n");
// 釋放內存
free(arr);
return 0;
}
在上述示例中,首先通過malloc函數分配了size個整型元素的內存空間。然后,用戶輸入了數組元素,并將其存儲在動態數組中。最后,使用free函數釋放了該內存空間。
請注意,在使用完動態數組后,一定要記得釋放分配的內存空間,以免造成內存泄漏。