0

我正在尝试使用 while 循环逐个字符地解析 QString 字符,但我不知道如何将单个字符解析为 char 类型。这是我的代码,我知道它不是最佳的:

QString temp = (QString)t[0];
int i = 1;

while (t[i] != " ");
{
    temp.append(t[i]);
    i += 1;
}

我已经看到了带有toLocal8bit函数的转换,但无论我尝试什么,我都无法使其适应我的代码。

Qt Creator 显示此错误:

error: conversion from 'const char [2]' to 'QChar' is ambiguous

符合while函数调用

4

2 回答 2

1

你为什么不试试:

QString test = "test";


for(int i = 0; i< test.length(); i++)
{
    if (test.at(i) != " ")
        test.at(i).toLatin1();
}
于 2013-09-20T11:56:10.070 回答
0

您可以使用基于 C++ 11 范围的 for 循环

for (auto chr : text)
{
    if (!chr.isDigit()) // for exmpl.
    return false; 
}
于 2019-11-01T01:07:34.410 回答