gpt4 book ai didi

c - 定义 ANSI C ISO/IEC-9899 中缺少的 bool 类型 :1990 in Visual Studio 2012 RC

转载 作者:行者123 更新时间:2023-11-30 17:59:11 32 4
gpt4 key购买 nike

typedef char bool;

不起作用(编辑:它不会编译“ fatal error C1004:发现意外的文件结尾”,而不仅仅是 Intellisense 的推断)。我假设的原因是 bool 是 Microsoft Visual C/C++ 中的保留关键字之一。因为我需要 bool 类型的文字名称作为精确的“bool”(这意味着,类型名称不是 bool,例如

boolean
BOOLEAN
BOOL
Bool
...

不允许),是否有一个编译选项也许我可以用来覆盖关键字“bool”,它在 ANSI C(ISO/IEC-9899)中 :1990) Microsoft Visual C/C++ 符合吗?

注意:这根本与 C++ 或 VISUAL C++ 无关。这是关于在兼容模式下使用 MSVC 编译器在 ANSI C 90 中进行编程。

提前致谢。

补充

编译选项:/TC/Za

/* ANSI C file main.c */

typedef char bool;

int main(int argc, char * argv[])
{
return 0;
}

(编辑:这个问题已经解决。对于这种情况 - typedef char bool - 就 ANSI C 而言,无法通过设置/Za 选项来解决禁用 Microsoft 语言扩展的问题,尽管 Microsoft 建议相反。这种不连贯可能会被视为 Visual Studio 2012 RC 中的潜在错误)

最佳答案

该文件有一个选项,您可以在其中选择编译类型(可以选择 C ​​或 C++)

另外,您尝试过 stdbool.h

关于c - 定义 ANSI C ISO/IEC-9899 中缺少的 bool 类型 :1990 in Visual Studio 2012 RC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11660725/

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