2
enum LIVELLI_EMERGENZA {
LIV_EME_UNO = 0x0001,
LIV_EME_DUE = 0x0002,
LIV_EME_TRE = 0x0003
};
typedef struct Emergenza {
int Tipo;
short Livello;
} Emergenza;
void TrovaEmergenze()
{
if(INPUT_GET(IN_FUNGO_EMERGENZA)) {
Emergenza.Tipo |= EME_FUNGO_PREMUTO;
Emergenza.Livello |= LIV_EME_UNO;
}
if((INPUT_GET(IN_FC_CARTER_LAMA))){
Emergenza.Tipo |= EME_CARTER_LAMA_APERTO;
Emergenza.Livello |= LIV_EME_DUE;
}
}
char EmeLivello1()
{
if((Emergenza.Livello & LIV_EME_UNO) != 0)
return 1;
return 0;
}
评估了面具emergenza.livello
我打算用& LIV_EME_UNO
进行检查。如果它不同于0
,则表示掩码中的位为高;但是我得到错误“预期表达式”!='token“。'!='标记之前的预期表达式...我错在哪里?
然后我可以检查[LIV_EME_UNO]只有一个变量,而不是一个结构体的字段?谢谢@sourav –
@ F.Guerinoni你是什么意思?你需要一个'struct'变量来应用'''运算符,不是吗? –
我使用'Emergenza.Livello | = LIV_EME_UNO',它的工作,但'(Emergenza.Livello | = LIV_EME_UNO)!= 0'不工作... –