unp*_*pix 0 c++ variables comparison
if(y-- > 0 && matriz[x][y--]!=9 && matriz[x][y--]!=0)
Run Code Online (Sandbox Code Playgroud)
当我这样做时,我的变量y不会递减,对吧?我可以做这个比较y--> 0?
想象一下,我有y = 0,我想比较-1> 0.
谢谢
假设所有测试都通过,您的代码实际上等效于此:
if (y > 0)
{
y--; // post-decrement
if (matriz[x][y] != 9)
{
y--; // post-decrement
if (matriz[x][y] != 0)
{
y--; // post-decrement
// all true
}
}
}
Run Code Online (Sandbox Code Playgroud)
如果有任何失败,你仍然会减少(等价将在else子句中),但为了简洁我省略了.
希望这足以澄清.我发现它非常笨拙,如果y < 2在开始时你最终会得到负面指数,这可能是一件坏事.
| 归档时间: |
|
| 查看次数: |
196 次 |
| 最近记录: |