平台是中文的macOS。
同样的代码:
printf("%s\n", utf8.c_str());
printf((const char *)u8"中文测试\n");
1、在macOS自己的终端里能输出中文。看了一下macOS自己的终端环境有个环境变量LANG=zh_CN.UTF-8
2、在SecureCRT连到macOS的窗口里能输出中文。
3、在vscode的debug console里输出的是十六进制转义字符。
在printf之前用setlocale没效果:
// setlocale(LC_ALL, "GBK");
setlocale(LC_ALL, "zh_CN.UTF-8");
对了,是vscode remote(从windows上启动vscode,连到macOS上调试)
猜测要去看vscode自己的代码
--
修改:z16166 FROM 114.241.227.*
FROM 114.241.227.*