love_qj 发表于 2020-7-26 13:47:05

C++无符号数问题

#include <iostream>

using namespace std;

int main()
{
        unsigned char u = -1;

        cout << u << endl;
       
        return 0;
}
// unsigned char 0~2^8-1
// unsigned int 0~2^32-1

为什么DEVC给不出结果,窗口空白。

永恒的蓝色梦想 发表于 2020-7-26 13:49:03

unsigned char 会被当作字符处理。

zltzlt 发表于 2020-7-26 13:49:27

因为没有 ASCII 码为 255 的字符

livcui 发表于 2020-7-26 14:26:31

因为u是unsigned char类型,
将u赋值-1,编译器会转换为255,
但你这没有编号为255的ASCII码的字符啊
unsigned char u = -1;    // u = 255


页: [1]
查看完整版本: C++无符号数问题