如果我写
PORTA =0b00000001;
PORTB =0b00000000;
PORTC =0b11111111;
PORTD =0b10100110;
if(PORTA){
//will this block be true?if yes then why and how it is evaluated
}
if(PORTB){
//smae here,to check true or false.
}
if(PORTC){
//if true then why or false,why?
}
if(PORTD){
//same
}
如果上面的说法有错,那么如何检查端口的状态?
答案 0 :(得分:1)
通常在C中,任何非零数字都将评估为真。如果要检查端口中特定位的值,请使用binary-AND运算符&
。注意:逻辑AND,&&
和二进制AND,&
不是一回事。
在您的问题中,只有PORTB会评估为假。