int n;
scanf("%d", &n);
int a[n]; // C99 支持 VLA,但非標準 C++,且棧空間有限,大數組易溢出
#include
int n;
scanf("%d", &n);
int *a = (int*)malloc(n * sizeof(int));
if (a == NULL) { /* 處理分配失敗 */ }
// 使用 a[0]...a[n-1] 如同普通數組
free(a); // 用完必須釋放,避免內存洩漏
malloc 在**堆**上分配內存,適合大數組或運行時才知大小的場景。NULL,務必判斷。free() 歸還內存,指針置 NULL 防野指針。std::vector a(n); 自動管理生命周期。