所以,我做了一个VLA:
int main()
{
const size_t LEN = 200; // as I know it's read-onlyy
int array[LEN];
}
所以我确定在C1中不再需要VLA。在今天的C99中它们是可选的...对于这个动机,不建议使用该代码。
但如果我这样做:
#define MYLEN 100
int main()
{
int xar[MYLEN];
}
或
int main()
{
int xar[100];
const size_t MYLEN = sizeof(xar) / sizeof(int);
}
我想我有:
但是使用define指令更有效,因为它对C语言来说是典型的。你建议使用什么?
无论如何,VLA可以在主要内部使用,但它没那么有意义。
答案 0 :(得分:0)
发布的代码没有定义VLA,因为在编译时始终知道大小调整。
这将是VLA的一个例子:
int myFunction( int size )
{
int myArray[size];
}