gpt4 book ai didi

c++ - 在 C、C++ 中通过移位运算符(<<、>>)移位的位

转载 作者:太空宇宙 更新时间:2023-11-04 05:55:21 65 4
gpt4 key购买 nike

我们可以在 C、C++ 中访问通过移位运算符(<<、>>)移位的位吗?例如:23>>1我们可以访问最后移动的位(在本例中为 1)吗?

最佳答案

不,移位运算符只给出移位后的值。您需要执行其他按位运算来提取从值中移出的位;例如:

unsigned all_lost  = value & ((1 << shift)-1);  // all bits to be removed by shift
unsigned last_lost = (value >> (shift-1)) & 1; // last bit to be removed by shift
unsigned remaining = value >> shift; // lose those bits

关于c++ - 在 C、C++ 中通过移位运算符(<<、>>)移位的位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28582660/

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