1、整数到布尔值的转换:在C语言中,任何非零整数都被视为true,而零被视为false,逻辑非操作符可以用来反转一个整数的值。!!5将返回true,因为5是非零的;而!!0将返回false,因为0是零。 2、浮点数到布尔值的转换:在C语言中,任何非零浮点数都被视为true,而零或NaN(非数字)被视为false,逻辑非操作符可以用来...
int func(unsigned char byte){bit=byte?1:0; return bit;} 但不管哪一个,都不如第一个简单高效。 简单可以很容易看出来,高效何在? 它不需要判断语句(判断语句在单片机中可能影响不是很大,但在有多级缓存的情况下,影响可能很大,这就是为什么 linux 中用 likely() 之类的进行优化)。 这样,不管原先的byte 是...