qt - 我在 Qt : SIGILL ERROR 中收到错误

标签 qt qstring

尝试将 QString 与空字符串进行比较时出现错误。

QString S = "abc";
if (S != "") // Sigill on this line
{
qDebug("ok");
}

最佳答案

根据 signal 手册页(第 7 节),SIGILL 指示非法指令,如果尝试执行无效或错误的指令,则会引发-formed 或如果指令需要比您运行时更高的权限级别。

因为两个字符串的比较不应该需要需要特殊权限的操作,所以您的 QT 版本可能是为您的处理器不支持的指令集编译的(例如支持 SSE 4.2,而您的处理器不支持)上海证券交易所 4.2)。要检查该条件,您可以在检查编译器使用的所有指令集都受您的处理器支持后重新编译 QT 库。

关于qt - 我在 Qt : SIGILL ERROR 中收到错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21237735/

相关文章:

c++ - 从 TCP 套接字读取

macos - qt 5.8 os x 在 GUI 应用程序打开时捕获传递的参数

c++ - 复制到 QMap 时出现 QString 错误。范围问题?

c++ - qt c++ "QString::number"不保留所需的小数位

c++ - 如何弹出 QString 的第一个字符串?

c++ - 你如何在Qt中删除字符串(qstring)中的子字符串

c++ - 工具提示中的 Qt WIdget

qt - 在 Qt 中,如何调整表格中的图标大小?

python - 使用 pyuic 将 Qt .ui 转换为 .py 的 Eclipse 外部工具

c++ - 如何使用 qDebug 打印字符串文字和 QString?