在这里我得到了o/p为'1',但我的期望是'100'。为什么这样?请说明一下。谢谢!从左到右或倒数的算术表达式评估?
int main()
{
cout << 100/10/10 << endl;
}
在这里我得到了o/p为'1',但我的期望是'100'。为什么这样?请说明一下。谢谢!从左到右或倒数的算术表达式评估?
int main()
{
cout << 100/10/10 << endl;
}
当运营商具有相同的优先级时,它们从左到右进行评估。
这是基本的代数。
不确定“基本代数”......考虑假设的求幂运算符'**':'a ** b ** c'应该是'a **(b ** c)',即右关联。 –
从TCPPL第4版的257页
元运算符和赋值运算符是右结合;所有 其他人都是左联合的。例如,a = b = c意味着a =(b = c)而 a + b + c表示(a + b)+ c
如果您不是100%确定,请使用括号 - 因为其他读者的代码在查看代码时可能具有相同的“问题”。 –
它不是真的关于“评估顺序”,而是“结合性”(它给出了操作的评估顺序,而不是它们的操作数)。 –