Qt C++ "QString::number"不需要保留小数位
qt c++ "QString::number" not retaining decimal places needed
我在将数字转换为字符串并保留所有小数位数时遇到问题。在下面的代码中,flat和flon都被声明为双精度,并有6位小数(flat=32.447134),(flon=-100.136468)。在用QString::number、(flat=32.4471)和(flon=-100.136)转换后。这些是gps坐标,因此保留所有小数点非常重要。
如果我将flon缩短为-99.136468,它在转换后保留了4个小数位,因此似乎必须限制8个字符的字符串长度。我需要11。
我如何转换它们并保留所有的小数点?
我尝试过QT文档中的"QString::number(long n,int base=10)"和其他内容,但在尝试运行时会出现语法和其他错误。
提前感谢!
if (ui -> northeast -> isChecked())
{
flat = flat + .00007;
flon = flon + .00007;
lo = QString::number(flon);
la = QString::number(flat);
QString ll = la + "," + lo;
ui -> gps_latlon -> setText(ll);
}
您正在使用QString::number:的重载
QString QString::number(double n, char format, int precision)
因此,请传递正确的格式和所需的精度。
这样做:
str = QString::number(flat, 'f', 6);
如果你想知道f
是什么意思,请在这里查看。
相关文章:
- 有根的二进制搜索树.保留与其父级的链接
- C++将浮点指针值舍入为小数位数
- 从给定的 I 和 D 序列中形成最小数
- 如何防止 c++ 在从浮点型转换为双精度型(不适用于 IO)时添加额外的小数?
- 为多个会话保留XPtr
- 保留对其他类的成员函数的引用
- 指针保留字符串
- 是否有内置方法可以强制转换为不同的基础类型,但保留常量限定符?
- 如何让 GCC/Clang 在保留标识符上出错
- 必须为 C++20 协程帧保留多少内存?
- 如何将一个窗口保留在另一个应用程序窗口的前面
- 使用 char 分隔符解析C++中的字符串,但将可重复的字符保留为每个解析的子字符串 (C++ STL) 中的分隔符
- 使用 std::index_sequence 初始化具有固定大小数组成员的 POD 结构容器
- 计算 PI 最多 42 位小数
- 为什么我必须添加一个小数才能在C++中正确计算此数学
- 局部变量保留函数中的值
- 返回浮点数的小数位数
- 从浮点数中删除小数部分但保留类型的有效方法
- C++Cout将字符串转换为保留所有小数的十进制数
- 在MSB到LSB交换后保留符号和小数