我收到了警告
Warning[Pe188]: enumerated type mixed with another type
at:
ErrorFlag = (CurrentTime - TimerX > TIMEOUT_X);
但如果我用以下内容替换它,警告就会消失:
if(CurrentTime - TimerX > TIMEOUT_X)
{
ErrorFlag = TRUE;
}
设置ErrorFlag
的第一种方法有什么问题?
修改的
我有一个本地enum
:
typedef enum{
FALSE = 0;
TRUE= 1;
}BOOL;
和ErrorFlag
的类型为BOOL
。
答案 0 :(得分:1)
根据C11
,章节§6.5.8(强调我的)
每个运营商
<
(小于),>
(大于),<=
(小于或等于)和>=
(大于或等于)如果指定的关系为真,则将产生1,如果是,则为0 false。 107)结果的类型为int
。
哪些可能与TRUE
的类型相同,这似乎是代码本地的enum
值。