【发布时间】:2020-11-14 23:14:09
【问题描述】:
我正在尝试输出与用户输入的整数值相对应的 Unicode。顺便说一句,这是在 C++ 中的 Windows 10 上完成的。 目前我可以使用此代码打印 Unicode:
_setmode(_fileno(stdout), _O_U16TEXT);
wprintf(L"\u0006");'''
我的问题是,如何将变量附加到 Unicode?p>
【问题讨论】:
我正在尝试输出与用户输入的整数值相对应的 Unicode。顺便说一句,这是在 C++ 中的 Windows 10 上完成的。 目前我可以使用此代码打印 Unicode:
_setmode(_fileno(stdout), _O_U16TEXT);
wprintf(L"\u0006");'''
我的问题是,如何将变量附加到 Unicode?p>
【问题讨论】:
类似的东西
wchar_t wstr[2] = { variable, L'\0' };
wprintf(L"%ls", wstr);
或者,您可以避免wprintf 的费用
wchar_t wstr[2] = { variable, L'\0' };
fputws(wstr, stdout);
在这两种情况下,variable 都是您提到的整数变量。您可能想要检查 wchar_t 是否在范围内,并且您可能想要添加强制转换来禁止任何编译器警告。
【讨论】:
_setmode(_fileno(stdout), _O_U16TEXT);,所以这很好学。