i = 0;
if(0 <= i <= 0)
这会返回 false。
这个我完全不懂。 Watch window我还尝试将声明改为 (0 <= i && i <= 0)
当我单独测试它们时 0 <= i
在 i <= 0
时返回 false返回真。他们都应该是真的。我不确定这是否是一个精确的事情,但我不这么认为,因为我正在硬编码其中的值。请帮助我理解这个基本问题。
如果有帮助,我正在尝试通过获取交点然后检查它是否在 x 和 y 起点和终点之间来评估点是否在线上。当我试图检查 x 或 y 何时在其轴上时,这就成了一个问题然后你遇到了检查 0 是否介于或等于 0 和 0 之间的问题。它是这样它会落在线上。
最佳答案
关系运算符的链接是不可能的(要根据预期产生有效结果),您需要编写单独的指令来验证每个条件。
由于 absence of explicit parenthesis and LTR association , 像这样的声明
if(0 <= i <= 0)
被评估为
if( (0 <= i) <= 0)
归结为
if ( 1 <= 0)
产生 0 (FALSE)。
也就是说, claim 涉及
I also tried making the statement read
(0 <= i && i <= 0)
when I test them individually0 <= i
returns false whilei <= 0
returns true. they both should be true
不正确,它们都是真的。 See for yourself
关于c - 零大于或等于零计算为假,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42527575/