gpt4 book ai didi

c++ - 将单个字符 QString 转换为 Char

转载 作者:行者123 更新时间:2023-11-30 02:42:47 25 4
gpt4 key购买 nike

我在复习考试时遇到了旧作业。我正在从控制台读取 4 个值,但在一行中。它们是 GPS 坐标,例如输入可以是 25 46 3 S。我正在使用以下代码读取值:

cout << "Latitude: ";
latitudeLine = cin.readLine();

QStringList args = latitudeLine.split(" ");
degrees = args[0].toInt();
minutes = args[1].toInt();
seconds = args[2].toInt();
cardinalDirection = args[3];

latitudeLine 是一个 QString。度、分和秒是整数,而 cardinalDirection 是一个字符。我无法更改这些,因为它们是在问题的 UML 图中提供给我的。一切正常,除了在最后一行中我将 QString 分配给不起作用的 char 变量。我环顾了整个网络,我发现的只是将长 QString 转换为 char*,但这给了我一个错误,说我需要一个 char 而不是 char*。这将始终是单个字符,是否有将 QString 转换为 char 的简单方法?

提前致谢!

最佳答案

为什么不像这样使用索引运算符:args[3][0].toAscii()?索引运算符将返回位置 0 和 QChar::toAscii 处的 QChar将返回 QChar 中的 char

注意:不要忘记检查 args[3] 是否不为空,否则索引运算符会使应用程序崩溃。

编辑:正如 @hyde 所说,使用 QString::toLatin1 而不是 QString::toAscii

关于c++ - 将单个字符 QString 转换为 Char,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26786293/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com