由于QT界面项目的需要,需要用到QString来存储数组,这就面临数据类型转换的问题,QString很强大,由于本人也是刚学习不久,很多资料都是网上找到的,由于自己的理解能力有限不能很好的应用,如一维数组以字符串形式输出,我刚开始写的代码是
QString
str
;
QString str; //定义QString类
for(int i=0;i<10;i++)
{
a[i]=i;
str+=a[i];//在str后逐个追加
}
qDebug() << str;//用于输出显示
输出显示总是"\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t"这种形式,我始终没有搞懂这是什么原因,后来查到需要定义一个中间的传递变量才可以正常的显示,原因是什么也没有具体说清楚,拿来主义了。哈哈哈
通过设置一个QString的中间变量完美的实现由数组的整形转换成QString类型,具体代码如下
QString str;for(int i=0;i<10;i++){a[i]=i;QString s=QString::number(a[i],10);str+=s;}qDebug() << str;注意:要在头文件中添加
#include<QtDebug>
#include<QString>否则会报错,头文件对于刚接触的学习者来书是个很大的障碍,许多文章往往只是给出了具体代码,而忘记了交代用到的头文件,这对于初学者来说是一件很头疼的事情,代码运行起来会有一大堆的错误(啰嗦了一下);
一下午的努力,问题解决,心情大好;