在C語(yǔ)言中,可變長(zhǎng)數(shù)組(Variable Length Arrays)是在C99標(biāo)準(zhǔn)中引入的一種特性,允許數(shù)組的長(zhǎng)度在運(yùn)行時(shí)動(dòng)態(tài)確定??勺冮L(zhǎng)數(shù)組的初始化方式與普通數(shù)組類似,可以使用初始化列表來(lái)初始化數(shù)組元素。
例如,下面是一個(gè)使用可變長(zhǎng)數(shù)組的示例代碼,并進(jìn)行初始化:
#include <stdio.h>
int main() {
int n = 5; // 可變長(zhǎng)數(shù)組的長(zhǎng)度
int arr[n]; // 聲明一個(gè)可變長(zhǎng)數(shù)組
// 初始化可變長(zhǎng)數(shù)組元素
for(int i = 0; i < n; i++) {
arr[i] = i * 2;
}
// 打印可變長(zhǎng)數(shù)組元素
for(int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
return 0;
}
在上面的示例代碼中,我們首先聲明了一個(gè)長(zhǎng)度為5的可變長(zhǎng)數(shù)組arr
,然后使用for
循環(huán)對(duì)數(shù)組元素進(jìn)行初始化,最后再使用for
循環(huán)打印數(shù)組元素。
需要注意的是,可變長(zhǎng)數(shù)組的長(zhǎng)度必須是在運(yùn)行時(shí)確定的,所以不能在聲明數(shù)組時(shí)直接賦予一個(gè)固定的值,如int n = 5; int arr[n];
這樣是錯(cuò)誤的寫法。