我尝试在 win32console 应用程序中将 UTF-16 字符输出到控制台,但我无法更改输出流的编码,我尝试使用 SetConsoleOutputCP() 函数但是当我使用下一个代码进行测试时
std::wcout << GetConsoleOutputCP() << std::endl;//output 866
SetConsoleOutputCP(CP_WINUNICODE); //if i set CP_UTF8 it works
std::wcout << GetConsoleOutputCP() << std::endl;//output 866
对于两种情况,我得到相同的结果(866)。当我尝试设置CP_UTF8
它可以正常工作但我需要 UTF-16 时,为什么我的尝试失败了,如何将输出流的编码设置为 UTF-16?