我注意到WriteConsole()函数调用只接受宽字符作为输入(或者打印问号字符)。
WriteConsole(outputHandle, L"A Message", 268, NULL, NULL);
我知道可以调用SetConsoleCP()来更改所使用的字符编码模式,但是ASCII似乎太多了必须通过此函数调用设置的特殊字符集。有没有更好的方法来更改Windows控制台应用程序中的字符集?
答案 0 :(得分:0)
我解决了我的问题。我的编译器(Visual Studio)默认设置为使用Unicode(在Project-> ProjectName Properties-> Configuration Properties-> General),所以我将该设置更改为"使用多字节字符集&#34 ;。编译器基本上将WriteConsole()宏设置为WriteConsoleW()(用于宽字符)而不是WriteConsoleA()。