首页 > 代码库 > C99标准中的部分新特性

C99标准中的部分新特性

我有点怀疑我会不会C语言了。

 

1、变长数组(VLA)

int n = 0;scanf("%d", &n);int arr[n];

2、数组初始化

int arr[10] = {[0] = 1, [5] = 6, [9] = 10};for(int i = 0; i < 10; i++) {    printf("%d\n", arr[i]);}

3、结构体初始化

struct Struct {    int a;    int b;    int c;};struct Struct test = {.b = 10, .c = 20};printf("%d %d %d\n", test.a, test.b, test.c);

 

这些代码在支持C99的编译器都可以通过,也许需要编译参数,比如gcc可能需要“-std=c99”

C99标准中的部分新特性