方法一:可以把它转为字符串,根据小数点的位置对字符串进行位数限制处理。当然,可以看出,这种方法需要对限制做出许多处理。以下代码仅提供思路,仍有不尽善之处:
double l = 1.3243;
QVariant v(l);
QString s = v.toString();
int count = s.count();
int index = 0;
QString str;
for(int i=0; i<count; i++)
{
str.append(s.at(i));
if(s.at(i) == '.')
{
index = i;
str.append(s.at(i+1));
str.append(s.at(i+2));
break;
}
}
l = str.toDouble();
qDebug() << l;
方法二:借用Qt的API
QString QString::number(double n, char format = 'g', int precision = 6) [static]
double l = 1.3243;
QVariant v(l);
QString s = v.toString();
qDebug() << s.number(1.3243, 'g', 3);
以上言论纯属个人观点,如有错误,请不吝指出。