我知道C有ANSI标准和ISO标准.这两个标准之间有什么区别吗?如果是这样,他们是什么?如果没有差异那么有两个标准是什么意思?
根据c99标准,我们可以编写以下代码,这是完全合法的
int x;
scanf("%d",&x);
int ar[x];
Run Code Online (Sandbox Code Playgroud)
我的问题是,如果我可以分配这样的数组,为什么我需要malloc再次分配可变大小的数组?
另外,请您解释一下可变长度数组的分配情况如何?内心深处,是否调用malloc来分配数组或者是什么?