Mag*_*eek 4 javascript php c++
这个:
if (A || B) { X; }
if (C && D) { X; }
if (F != G && H + I === J) { X; }
Run Code Online (Sandbox Code Playgroud)
可以替换为:
if ((A || B) || (C && D) || (F != G && H + I === J)) { X; }
Run Code Online (Sandbox Code Playgroud)
但它可以被替换为:
if (A || B || C && D || F != G && H + I === J) { X; }
Run Code Online (Sandbox Code Playgroud)
?(没有括号)
语言之间有什么区别吗?
PS:答案不应该基于这些例子.
一,如果这些都有副作用,这都是无效的.
二,只有X是幂等的,这是一种奇特的说法,如果X可以被调用两次而第二次没有变化.
http://en.cppreference.com/w/cpp/language/operator_precedence
&&在这种情况下||,你可能会贬低parens &&.我认为运算符优先级规则对于任何具有它们的语言都有效,我不知道对此有任何反例,并且您询问的语言遵循C运算符优先级规则.
| 归档时间: |
|
| 查看次数: |
93 次 |
| 最近记录: |