我正在使用一个相当旧的代码库,而且都是 C99 之前的代码。因此,没有bool
类型,而是一个BOOLEAN
枚举。我是一个年轻的枪手,所以我喜欢 VS 2010,但它与旧代码库的配合并不是特别好。我猜它使用 MSVC2010 来做它的在线错误高亮,我也猜MSVC2010 符合 C99 标准。我可能错了,但无论如何,当我用布尔表达式分配 BOOLEAN 变量时,它会突出显示“错误”。我举一个简单的例子:
typedef enum boolean_tag {FALSE, TRUE} BOOLEAN;
BOOLEAN test = FALSE;
test = 1 == 1;
在 VS2010 编辑器中,=
将错误突出显示,并且在鼠标悬停时会注意到 type 的值bool
不能分配给 type 的实体BOOLEAN
。由于 C99 之前没有 a 的概念bool
,这应该只是枚举值的分配,因此不是错误。
所以,我的问题是:有没有办法告诉 VS2010 使用 C99 之前的语法/错误检查?或者,这是一个延伸,它是否完全为这些功能使用了另一个编译器?
谢谢。
编辑:更正了 MSVC2010 假设