c警告[Pe188]:枚举类型与其他类型混合

时间:2017-05-29 06:14:19

标签: c warnings

我收到了警告

 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

1 个答案:

答案 0 :(得分:1)

根据C11,章节§6.5.8(强调我的

  

每个运营商<(小于),>(大于),<=(小于或等于)和>=   (大于或等于)如果指定的关系为真,则将产生1,如果是,则为0   false。 107)结果的类型为int

哪些可能TRUE的类型相同,这似乎是代码本地的enum值。