Tho*_*mas 5 c++ qstring qt type-conversion
我有一个QString包含一系列数字的例子
QString path = "11100332001 234 554 9394";
Run Code Online (Sandbox Code Playgroud)
我想迭代可变长度字符串
for (int i=0; i<path.length(); i++){
}
Run Code Online (Sandbox Code Playgroud)
并能够int单独访问每个号码.
但是,我无法这样做.问题:如何将QString数字转换为数组int?
我知道我可以将其转换QString为int使用,path.toInt()但这对我没有帮助.
当我尝试将它转换为char时,我得到一个错误:cannot convert 'const QChar to char'.
for (int i=0; i<path.length(); i++){
char c = path.at(i);
int j = atoi(&c);
//player->movePlayer(direction);
}
Run Code Online (Sandbox Code Playgroud)
您可以使用split获取由您想要的分隔符分隔的子串数组,在这种情况下它是一个空格,这是一个示例:
QString str("123 457 89");
QStringList list = str.split(" ",QString::SkipEmptyParts);
foreach(QString num, list)
cout << num.toInt() << endl;
Run Code Online (Sandbox Code Playgroud)