【问题标题】:C++ input integer print unicodeC++输入整数打印unicode
【发布时间】:2020-11-14 23:14:09
【问题描述】:

我正在尝试输出与用户输入的整数值相对应的 Unicode。顺便说一句,这是在 C++ 中的 Windows 10 上完成的。 目前我可以使用此代码打印 Unicode:

_setmode(_fileno(stdout), _O_U16TEXT);

wprintf(L"\u0006");'''

我的问题是,如何将变量附加到 Unicode?​​p>

【问题讨论】:

    标签: c++ windows unicode


    【解决方案1】:

    类似的东西

    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 是否在范围内,并且您可能想要添加强制转换来禁止任何编译器警告。

    【讨论】:

    • 我不确定你不明白什么。你不熟悉以 null 结尾的字符串、printf 样式格式、数组初始化吗?
    • 别介意,我是愚蠢的。只是当我尝试它时它给了我错误。
    • 好的,我没有测试任何东西,你遇到了什么错误?
    • 抱歉还没睡,现在应该修好了。
    • 我现在已经测试过了,它对我有用。我不知道_setmode(_fileno(stdout), _O_U16TEXT);,所以这很好学。
    猜你喜欢
    • 1970-01-01
    • 2013-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-02
    相关资源
    最近更新 更多