这两个C条件之间的差异
我只是想知道它们之间有什么区别这两个C条件之间的差异,c,C,我只是想知道它们之间有什么区别 if(matrix[i][x] && matrix[i][x] + length > matrix[i][y]){} 及 ?? 我在我的程序上运行测试用例,这两个语句是造成差异的原因,在一些测试用例中,它们都产生了相同的答案,但在一些测试用例中它们没有。它们的处理方式不同吗?提前感谢。如果矩阵[i][x]为非零,则第一次测试。第二个测试是否大于矩阵[i][y] 不是分布式的;也就是说,a&&b>c并不意味着a>c和a>b;a和b>c
if(matrix[i][x] && matrix[i][x] + length > matrix[i][y]){}
及
??
我在我的程序上运行测试用例,这两个语句是造成差异的原因,在一些测试用例中,它们都产生了相同的答案,但在一些测试用例中它们没有。它们的处理方式不同吗?提前感谢。如果矩阵[i][x]为非零,则第一次测试。第二个测试是否大于矩阵[i][y]
不是分布式的;也就是说,a&&b>c
并不意味着a>c
和a>b
;a
和b>c
是完全独立的表达式。第一个表示if(matrix[i][x]!=0&&matrix[i][x]+length>matrix[i][y]){}
ohhh,非常感谢。。。他们显然不同。你没有看到区别吗?是的,它们将根据运算符的优先级进行不同的处理。小心地使用大括号。AnT,是的,我现在明白了,我不习惯在不指定要检查什么的情况下使用条件,所以当我看到这一点时,我感到困惑,但我记得你可以像那样检查零,很抱歉,谢谢你的回答!
if(matrix[i][x] > matrix[i][y] && matrix[i][x] + length > matrix[i][y]){}