gpt4 book ai didi

c++ - 无符号字符范围是0到255

转载 作者:行者123 更新时间:2023-12-01 15:07:52 25 4
gpt4 key购买 nike

#include <iostream> 
using namespace std;
int main()
{
unsigned char counter = 0;
for (counter = 0; counter <= 255; counter++) {
printf("%d ", counter);
}
return 0;
}

正确的输出是无限循环
但是我认为输出是0,1,... 255,因为无符号char的范围是0到255.当计数器变为256时,只有它超出了范围。但是这里我们的条件是计数器<= 255请清除我的疑问

最佳答案

将unsigned char视为一个字节:
0-> 0b00000000
1-> 0b00000001
...
255-> 0b11111111

然后下一个数字是0,因为您不能有第9位。因此,在0b11111111之后为0b00000000。

这就是为什么它是一个无限循环,它将永远不会达到256,并且始终保持在0到255之间。

关于c++ - 无符号字符范围是0到255,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62305295/

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