gpt4 book ai didi

c++ - 按位非的奇怪输出

转载 作者:IT老高 更新时间:2023-10-28 22:33:26 25 4
gpt4 key购买 nike

我试图取 0 的补码得到 1,但我得到 4294967295。这是我所做的:

 unsigned int x = 0;
unsigned int y= ~x;
cout << y;

我的输出是 4294967295 但我希望是 1,为什么会这样?顺便说一句,我是用 C++ 做的。

最佳答案

你为什么期望 1?按位补码翻转所有位。

00000000000000000000000000000000 = 0
|
bitwise NOT
|
v
11111111111111111111111111111111 = 4294967295

也许您正在考虑 logical NOT .在 C++ 中,这被写为 !x

关于c++ - 按位非的奇怪输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3462227/

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