在测试遍历打印文件名时,文件名带中文的全部显示问号
printf 与 wprintf
- printf : 可以格式化输出wchar_t *类型的中文字符串,但是%s 要替换成%ls 或 %S
- wprintf :可以直接使用wprintf来输出wchar_t* 类型的中文字符串,还是用%s,使用%ls或者%S无效
setlocale函数
代码如下
#include <stdio.h>
#include <string.h>
#include <locale.h>
int main()
{
//使用系统默认的设置调用setlocale(LC_ALL, "");
setlocale(LC_ALL, "");
const wchar_t * chWord = L"疯狂程序人—码僧悟道";
printf("%s",chWord);
}