gpt4 book ai didi

c++ - 为什么当我使用没有运算符重载的额外括号时,插入运算符会在 std::cout 中给出不同的结果?

转载 作者:行者123 更新时间:2023-11-28 01:20:00 25 4
gpt4 key购买 nike

根据我的理解,当与任何 ostream 对象(如 std::cout)一起使用时,插入运算符将简单地插入后面的值。但是当我使用括号时,我得到的结果与预期的不同。我试图理解为什么在下面显示的代码中使用带括号的插入运算符会在 C++ 中给出以下结果?

代码

std::cout << (2 << 3) << std::endl;

结果

16

最佳答案

当你像那样把它括起来时,它变成了位移位而不是插入运算符。

二进制中的 2 是 10

左移 3 后,二进制变为 10000 相当于 16

关于c++ - 为什么当我使用没有运算符重载的额外括号时,插入运算符会在 std::cout 中给出不同的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56844714/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com