gpt4 book ai didi

c - Visual Studio 将不完整数组视为零长度数组

转载 作者:行者123 更新时间:2023-12-04 09:12:34 25 4
gpt4 key购买 nike

我有一个看起来像这样的结构:

typedef struct foo {
int this;
int that;
int length;
int info[]; // legal for last element of a struct
} Foo;

当我编译它时,我收到这样的警告:
C4200 nonstandard extension used: zero-sized array in struct/union

我只是忍受警告,还是可以设置一些属性来告诉 Visual Studio 使用 C-99?

最佳答案

Visual Studio 2015 [几乎] 完全实现了 C99,但仍将所有 C99 功能视为语言扩展(例如,禁用语言扩展也会禁用 C99 支持)。其中一些功能会触发虚假警告,例如您观察到的警告。

只要 C99 支持保持在这种半官方的“扩展”状态,只需忽略/禁用此类警告。

请注意,VS2015 Update 3 不再针对此类 C 代码发出此警告。

关于c - Visual Studio 将不完整数组视为零长度数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39131841/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com