【问题标题】:Qt: Get ASCII Code From QCharQt:从 QChar 获取 ASCII 码
【发布时间】:2013-12-30 14:53:55
【问题描述】:

我需要从 QChar 获取 ASCII 码。

在 Qt 5.2 中,QChar::ToAscii 已被删除。

这是我的代码。如何获取 ASCII 码?

QString data;
int key;
key = data.at(i);

【问题讨论】:

  • 奇怪,通过将提取的字符转换为整数,您似乎能够自己提供答案。实际上,这应该可以在不通过 toAscii() 函数的情况下完成您的任务。您能否使用该代码更深入地解释您所面临的问题?

标签: qt qchar


【解决方案1】:

用途:

char QChar::toLatin1() const

来自文档:

返回等同于 QChar 的 Latin-1 字符,或 0。这主要用于非国际化软件。

从 Qt5.0 版本开始

char QChar::toAscii() const

此功能已弃用。 返回 QChar 的 Latin-1 字符值,如果该字符不可表示,则返回 0。

例子

QString test("test");
QChar c = test.at(0);
int v_latin = c.toLatin1();
int v_ascii = c.toAscii();
qDebug() << v_latin << " " << v_ascii;

输出:

116   116

【讨论】:

  • 我正在查找来自× 乘号的ascii 代码,并且QChar 存储一个负值= -41。当我查看 ascii 表时,它的符号值为 158,为什么我会得到这个负值?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-22
  • 1970-01-01
  • 2020-06-17
  • 1970-01-01
相关资源
最近更新 更多