我正在开发一个带有 ncurses 的小型控制台游戏。在主菜单中,我希望用户能够设置控制键。现在据我了解,在 ncurses 中,您可以通过 char 'a' 的 int 值访问 ea 键。使用带有“a”的关键游戏完美无缺,但是我被菜单卡住了:
对于每个键绑定,我存储了一个默认为 ea 'a' 的 int 值。游戏开始时,我从 int 值中正确读取了“a”绑定,并且可以在游戏中使用它。但是,它不能正确显示。我希望它是这样的:“左:a”。我这样做:
std::string key = "Left: " + static_cast<char>(_value);
_value 是我存储并初始化为“a”的 int 值。顺便说一句,我也试过没有演员表。
现在显示的内容很奇怪。它不是“a”,而是“~T^C”。对于字母“s”和“d”,它根本不显示任何内容。“w”变成了一些很奇怪的编码问号。
我想这与 int-values 中字符的编码有关。那么我该怎么做才能让它以正确的方式显示呢?
非常感谢!