#include <stdio.h>
#include <wchar.h>
#include <locale.h>
int main()
{
#ifdef _WIN32
setlocale(LC_ALL, "chs");
#else
setlocale(LC_ALL, "zh_CN.UTF-8");
#endif
wchar_t KZg[] = {0x6211, 0};
char buf[10] = {0};
wcstombs(buf,KZg,10);
printf("_%s_\n",buf);
}
wchar_t 在linux上是4个字节, 在win32上是2个字节, MinGW也是2个字节.
一般会节省空间使用utf-16.
#ifdef _WIN32
typedef wchar_t uchar;
#else
typedef unsigned short uchar; // 就不能使用string.h提供的宽字符串方法了.
#endif
linux上使用string常量只能用{}.
关键词标签:linux控制台显示中文
相关阅读
热门文章 windows7虚拟光驱安装和使用方法解决应用程序正常初始化(0xc0000135)失败hosts文件位置以及如何修改hosts文件[声音故障]XP没有声音,丢失Windows Audi
人气排行 [声音故障]XP没有声音,丢失Windows Audio服务(AudioSrv)[警解决Windows 7黑屏的有效方法windows2003中关于软路由设置方法的具体介绍Windows不能在本地计算机启动OracleDBConsoleorcl一个空文件夹删不掉的解决办法Windows 7加XP的局域网搭建与文件共享用Windows命令行实现自动SSH代理Windows提示错误应用程序update.exe
查看所有0条评论>>