1、宽字符的使用
"中"字的编码:
ASCII:d6 d0
UNICODE:4e 2d
char x = '中';
wchar_t x1 = '中';
观察内存中的值,为什么会出现这种情况?
如何告诉编译器我们要使用的是Unicode的那张表呢?
wchar_t x1 = L'中';
2、宽字符串的使用
char x[] = "中国";
//d6 d0 b9 fa 00 使用拓展ASCII编码表 以00(\0)结尾
wchar_t x1[] = L"中国";
//2d 4e fd 56 00 00 使用UNICODE编码表 以00 00(\0\0)结尾
3、在控制台打印
char x[] = "中国";
wchar_t x1[] = L"中国";
printf("%s\n", x); //使用控制台默认的编码
wprintf(L"%s\n", x1);