LoK-DoK Asked:2024-11-15 00:03:49 +0000 UTC2024-11-15 00:03:49 +0000 UTC 2024-11-15 00:03:49 +0000 UTC cout << !(5 > 7) && 2 > 3;是真是假? 772 我正在运行一个 C++ 测试,并遇到了这个任务,如果你仔细想想,结果应该是 False,我在三个编译器中检查了它并被卡住了。请解释一下为什么是假的?优先事项 !更高,但是是从右到左;本例中其余运算符的优先级较低,从左到右。 c++ 1 个回答 Voted Best Answer Harry 2024-11-15T00:11:52Z2024-11-15T00:11:52Z 让我们看看优先事项... 嗯,当然,5>7在括号里。 !打断&&。 cout << (!(5 > 7)) && 2 > 3; 比较中断&&:cout << ((!(5 > 7)) && (2 > 3); 操作员<<中断&&:(cout << ((!(5 > 7))) && (2 > 3); 一切都清楚了吗? 我们计算5>7 - false,它的否定为true,这就是我们的推论。好吧,我们将输出结果与2>3进行比较,并且不输出到任何地方......
让我们看看优先事项...
嗯,当然,
5>7在括号里。!打断&&。cout << (!(5 > 7)) && 2 > 3;比较中断
&&:cout << ((!(5 > 7)) && (2 > 3);操作员
<<中断&&:(cout << ((!(5 > 7))) && (2 > 3);一切都清楚了吗?
我们计算5>7 - false,它的否定为true,这就是我们的推论。好吧,我们将输出结果与2>3进行比较,并且不输出到任何地方......