pis粉丝做的网站,婚庆公司有哪些服务,南宁网站快速排名提升,wordpress 七牛插件代码比较布尔值的时候下面的代码看起来是一样的。
#define FALSE 0
#define TRUE 1
if(flag FALSE)
if(!f1ag)
...
if(flag TRUE)
if(flag)
...但是#xff0c;如果flag设置为任意的整型值#xff0c;那么第2对语句就不是等价的。只有当flag确实是TRUE或FALSE#xff0c;或者…比较布尔值的时候下面的代码看起来是一样的。
#define FALSE 0
#define TRUE 1
if(flag FALSE)
if(!f1ag)
...
if(flag TRUE)
if(flag)
...但是如果flag设置为任意的整型值那么第2对语句就不是等价的。只有当flag确实是TRUE或FALSE或者是关系表达式或逻辑表达式的结果值时两者才是等价的。
解决所有这些问题的方法是避免混合使用整型值和布尔值。如果一个变量包含了一个任意的整型值应该显式地对它进行测试
//下面的语句暗示是一个整型值的比较
if( value ! 0 ) ...不要使用简写法来测试变量是零还是非零因为这类形式错误地暗示该变量在本质上是布尔型的。
如果一个变量用于表示布尔值应该始终把它设置为0或者1例如
positive_cash_flow cash_balance 0;不要通过把它与任何特定的值进行比较来测试这个变量**布尔型**是否为真值哪怕是与TRUE或FALSE进行比较。相反应该像下面这样测试变量的值
//下面的语句暗示是一个布尔型的比较
if( positive_cash_flow ) ...
if( !positive_cash_flow ) ...使用布尔型的变量应该选择使用描述性的语言描述比如如果现金流量为正那么 …
参考
《C和指针》