6

是否有用于非字母输入字符的用户友好表示的标准函数?
说 char(27) 将是“ESC”或“Escape”或类似的东西。
我问这个是因为这对我来说是一种在命令行中显示控件帮助的简单方法。

编辑:

正如@ypnos 指出的那样:问题是如何避免定义我自己的键名。
我想知道在 boost 或 std 或一些基本库中是否有我错过的功能?

目前,仅 Ascii 可以为我工作,但我正在寻找一个“标准”解决方案,因为我不想在处理 Unicode 输入后重新实现——比如在 Ascii 中没有重音的字符——稍后。

我的程序代码将被发送到 Linux 和 Windows,我也不希望名称在某些地方出错。

4

1 回答 1

2

最 C++-y 的方式可能是通过Ogonek之类的库。不幸的是,目前尚未实现相关功能。

R. Martinho Fernandes(维护者)告诉我它应该如下所示:

namespace ogonek {
    namespace ucd {
        …

        basic_text<utf8> get_name(codepoint u) {
            return basic_text<utf8> {
                find_property_group(name_data, name_data_size, u).name };
        }

        …
    }
}

然后你可以简单地显示一个Unicode代码点的(比如27)名称使用

std::cout << ogonek::ucd::get_name(27);
于 2012-11-06T15:00:14.450 回答