我有一点点逻辑。
int i = 0;
if (i < 0) {
//whatever;
}
当我使用VS进行调试时,我看到i
设置为0但是if评估为false!怎么会这样?
GUYS。也许我可以更好地措辞!上面的表达式应该在我为0时评估为假,当我在VS中将鼠标悬停在它上面时它会看到它进入括号并做“无论什么”......这是不对的。
编辑:请参阅我的similarly named but more recent question了解解决方案。
答案 0 :(得分:9)
0不小于0.它等于。做if (i <= 0)
答案 1 :(得分:5)
那是因为0&lt; 0是假的。
答案 2 :(得分:2)
如果i
等于0,则为假,因为它不小于0.
您的想法是if(i == 0)
或if (i <= 0)
(或者就此而言if(i >= 0)
)。如果i
等于0
,则其中每一项都是正确的。
答案 3 :(得分:2)
因为我不低于零。因此,表达式的计算结果为false,这是正确的。
答案 4 :(得分:2)
0不小于0.它小于OR EQUAL到0
答案 5 :(得分:2)
它的计算结果为false,因为0不小于0.
答案 6 :(得分:2)
0 < 0
始终为false
。在什么条件下,您希望它评估为true
?
答案 7 :(得分:2)
答案是因为我不低于0.
为了使if语句评估为true,我需要是一个负整数。
答案 8 :(得分:1)
0 < 0
是假的。如果<=
为i
0
评估为真
答案 9 :(得分:1)
也许你需要简单的逻辑:
int i = 0;
if(i <= 0) {Whatever }