企业网站开发模型图,东莞企业营销型网站,做网站网页的公司,城市建设投资公司网站该楼层疑似违规已被系统折叠 隐藏此楼查看此楼QString与数字之间的转换#xff1a;1. QString转数字1.1 QString -- intintQString::toInt(bool * ok 0, int base 10) const转换发生错误#xff0c;或者转换不成功ok为false#xff1b;发生错误时#xff0c;返回值为…该楼层疑似违规已被系统折叠 隐藏此楼查看此楼QString与数字之间的转换1. QString转数字1.1 QString -- intintQString::toInt(bool * ok 0, int base 10) const转换发生错误或者转换不成功ok为false发生错误时返回值为0。base为转换进制该方法有很大的局限性要转换的字符串中只能有0-9的字符组成如果含有其他字符转换将会失败1.2 QString -- doubledoubleQString::toDouble(bool * ok 0) const转换发生错误或者转换不成功ok为false发生错误时返回值为0.0。支持将科学计数法转成double不支持处理千组分隔符。1.3 QString -- floatfloatQString::toFloat(bool * ok 0) const转换发生错误或者转换不成功ok为false发生错误时返回值为0.0。1.4 例子QString str 11.55;bool ok;int a str.toInt(ok);//当str出现除了0-9这些数字的其他符号(不包括 - )将会转换失败即只支持整数的转换//str 11 true//str -11 trueqDebug() ok a a; //false a 0double b str.toDouble(ok);qDebug() ok b b; //true b 11.55float c str.toFloat(ok);qDebug() ok c c; //true c 11.552. 数字转QString下面介绍的转换成QString是用了同一个函数不同的重载而已。2.1 int -- QStringQStringQString::number(int n, int base 10) [static]n为需要转换的数字base转换进制2.2 double/folat -- QStringQStringQString::number(double n, char format ‘g’, int precision 6) [static]n为需要转换的数字format格式根据指定的格式和精度进行格式化precision 精度默认精度为62.3 setNum() 有多个重载QString QString::setNum(int n, int base 10)将n以base进制转为QString2.3 例子int a 123;double b 123.456;float c 465.12;QString strA QString::number(a);qDebug() strA strA; //strA 123QString strB QString::number(b);qDebug() strB strB; //strB 123.456QString strC QString::number(c);qDebug() strC strC; //strC 465.12QString strD;strD.setNum(a); //strD 123