所以我理解C ++将一个字节定义为typedef unsigned char。但是我不能完全理解为什么在设置一个等于int的字节变量后,它会像一个笑脸一样......
#include <iostream>
#include <Windows.h>
using namespace std;
int main(){
int x = 1;
byte y = x;
cout << y;
}
我确定这有一个简单的解释,但我似乎无法找到它。 unicode OR UTF8的第一个字符是否设置了笑脸?
答案 0 :(得分:3)
您必须使用Windows。代码为1
的字符是Code Page 437中的笑脸,即命令窗口使用的笑脸。代码点0
到31
与Unicode中的可打印字符不对应。
是的,byte
通常定义为unsigned char
。当您向char
发送cout
变量(已签名或未签名)时,它会输出一个字符,而不是一个数字。