Linux下宽字符串输出问题,求解...

2025-12-14 03:10:03
推荐回答(2个)
回答1:

setlocale( LC_ALL, "chs " );
看看是不是没有调用这个函数
for example
char str[1024] = "abc123故障短路切换";
wchar_t array[1024]={0};
setlocale(LC_ALL,"zh_CN.GB2312");
/*from chinese to Unicode*/
if((ret=mbstowcs(array, str, strlen(str)))==-1)
{
printf("error\n");
}

goodluck

回答2:

转化字符的函数是 mbtowc()

mbstowcs()用于转化多字节字符串