Bar*_*sen 27 c int if-statement
我认为这是一个简单的问题,但我正在努力解决以下问题.在示例中,我有以下语句(语言是C):
int foobar
if (foobar)
{
// do something.
}
Run Code Online (Sandbox Code Playgroud)
现在,如果我对此是正确的,当foobar不为零时,这种说法是正确的.所以它应该与if(foobar!= 0)相同;
但是,如果foobar成为负数,会发生什么?
Ani*_*nge 47
消极或积极的.任何不是0的东西都是真正的价值if
另外,考虑一个负数:-1
内部C中的-1表示为:0xFFFFFFFF在这种情况下,如果我将其转换为无符号整数,它将是一个正数.
但是在C99标准编译器出现之后,我建议你
<stdbool.h>改用它.使猜测工作少了很多: