[英]_tprintf with Unicode characters in a console app
我正在从Unicode构建的控制台应用程序(使用C ++和Visual Studio 2008)中执行此简单输出。 此代码旨在在Windows上运行:
_tprintf(L"Some sample string\n");
一切正常。 但是如果我在那里添加一个非ASCII字符:
_tprintf(L"Some sample € string\n");
输出到控制台的内容是该字符之前的所有内容:
一些样本
我在这做错了什么?
默认情况下,Windows控制台不处理宽字符。 启用该功能的最简单方法可能是调用_setmode
:
_setmode(_fileno(stdout), _O_WTEXT);
有关所需的包含,用法示例和其他可用模式,请参阅MSDN 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.