wchar_t的解释可以看这里:这里
程序和解析:
1 # include<stdio.h> 2 # include<stdlib.h> 3 # include<locale.h>//设置本地化 4 int main() 5 { 6 //常规的输出汉字 7 char s[100] = "我是大好人"; 8 printf("%c%c ", s[0], s[1]); 9 10 11 //不合法输出,ascii中没有汉字,char只能输出字母,数字,字符 12 char x = '我'; 13 printf("%c ", x); 14 15 16 //用wchar_t 存储宽字符 17 wchar_t ch = L'我';//宽字符 18 printf("%d", sizeof(ch)); 19 setlocale(LC_ALL, "chs");//简体中文 20 wprintf(L" %wc", ch); //汉字当作一个字符 21 wchar_t str[100] = L"我是一个好人"; 22 wprintf(L" %s ", str); 23 system("pause"); 24 }
MessageBox
使用多字节字符集 MessageBox(0,"我的手机","我的手机",0)
unicode MessageBox(0,L"我的手机",L"我的手机",0)
无论是多字节还是unicode,我就是多字节 MessageBoxA(0,"A我的手机","A我的手机",0)
无论是多字节还是unicode,我就是unicode MessageBoxW(0,L"W我的手机",L"W我的手机",0)
自适应unicode或多字节 MessageBox(0,TEXT("AW我的手机"),TEXT("AW我的手机")0)