我正在学习C语言考试,我在一些网站上下载了一份C语言总结。
上面写着不允许使用变量i来访问数组arr[i],唯一的方法是使用malloc函数。
然而,我编写了以下代码,并且它能够通过编译和valgrind检测而没有任何警告和错误:
int index = 5;
int a4[index];
a4[0] = 1;
a4[1] = 2;
int index2;
scanf("%d",&index2);
int a5[index2];
a5[0] = 1;
a5[1] = 2;
那么,关于数组声明的真相是什么呢? 谢谢!