USC2字符似乎与wchar_t
兼容。
但是,当一个代码点大于U+FFFF
时,它就不起作用。
#include <iostream>
#include <fcntl.h>
#include <io.h>
int main()
{
_setmode( _fileno(stdout), _O_U8TEXT ); // _O_WTEXT has no difference
std::wcout.sync_with_stdio(false);
std::wcout << L"z\u00df\u6c34\U0001F34C\n" << std::endl; // L"zß水?"
}
打印如下:
zß水�
如何在Windows的控制台应用程序上打印SMP字符?
如果没有C++/WinRT
,有可能吗?