QString类型的小数转Int类型

QString t = "555.5";
double tt = t.toInt();  // 将字符串转换为浮点数

// 现在 tt 的值应该为 0

在执行 t.toInt() 时,返回的结果为0,而不是预期的555。这是因为 toInt() 函数在将字符串转换为整数时遇到了非法字符。

toInt() 函数是 QString 类的成员函数,用于将字符串转换为整数。但它只能将合法的整数表示形式转换为整数值,并忽略字符串中的非数字字符。当字符串中的第一个字符就无法解析为有效的整数时,toInt() 返回0,表示转换失败。

在这种情况下,字符串 "555.5" 中包含小数点字符 '.',它无法被正确解析为整数。因此,在执行 t.toInt() 后,返回的结果为0。

如果你需要将字符串 "555.5" 转换为浮点数类型而不是整数类型,可以使用 toDouble() 函数。以下是一个示例代码

QString t = "555.5";
double tt = t.toDouble();  // 将字符串转换为浮点数

// 现在 tt 的值应该为 555.5

通过使用 toDouble() 函数,你可以将字符串成功地转换为相应的浮点数类型,以便进行后续操

你可能感兴趣的:(燃犀的QT笔记,qt,开发语言)