本文介绍了变体长度数组声明标准兼容吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好,

以下代码


< CODE>

void foo(int n)

{

int a [n];

.....

}

< / CODE>


标准兼容和便携?


我使用的是英特尔,M $'s,borland ''数字火星'和GUN(c89)的编译器

编译了它,前三个报告错误,但最后两个默认通过了

。我想知道那段代码是否便携。


提前。

£*£*£*£*£*£*£*£* £*£*£*£*£*£*£*£*£*£*£*£*£*£*£*£*£*£*£*

祝你好运,

Hi, everyone,
Is the following code

<CODE>
void foo(int n)
{
int a[n];
.....
}
</CODE>

standard compliant and portable?

I use intel''s, M$''s, borland''s Digital Mars''s and GUN(c89)''s compiler
compiled it, the first three report error but the last two were passed
silently. I want to know whether that code is portable.

Ths in advance.
£*£*£*£*£*£*£*£*£*£*£*£*£*£*£*£*£*£*£*£*£*£*£*£*£* £*£*
Best regards,

推荐答案





这是在C99标准中定义的,只要你使用C99编译器就可以移植它。

与gcc一起使用它std = C99选项,如果我的记忆没有背叛

我。


jacob


This is defined in the C99 standard, and it is portable as long as you
use a C99 compiler.
To use it with gcc use the std=C99 option, if my memory doesn''t betray
me.

jacob


这篇关于变体长度数组声明标准兼容吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-14 05:24