zoukankan      html  css  js  c++  java
  • Qt double类型输出问题

    一、示例

    double dd = 587654367 * 0.001;
    
    qDebug() << "1 --> " << QString::number(dd);
    qDebug() << "2 --> " << QString::number(dd, 'f', 6);

      输出结果:

        

      由此可见QString::number()默认只输出6位,若想要后面的数提高输出位数即可

      查看QString::number()函数,该函数定义如下:    

        static QString number(int, int base=10);
        static QString number(uint, int base=10);
        static QString number(long, int base=10);
        static QString number(ulong, int base=10);
        static QString number(qlonglong, int base=10);
        static QString number(qulonglong, int base=10);
        static QString number(double, char f='g', int prec=6);

      这是一个重载成员函数,它们的行为基本相同。根据fmt指定的格式

        第一个参数被格式化

        g为默认选用参数并且可用下列替换:

          e - 格式化为[-]9.9e[+|-]999

          E - 格式化为[-]9.9E[+|-]999

          f - 格式化为[-]9.9

          g - 使用e或f格式,看哪一个更简练

          G - 使用E或f格式,看哪一个更简练

        在所有的情况下,小数点之后数字的个数等于prec指定的精度。

      

     

        

  • 相关阅读:
    多项式模板整理
    广大附中2019CSP模拟day6
    2019正睿CSP-S模拟赛十连测day6
    NOIP2020 游记
    NOI2020 退役记
    CSP2019 退役记
    目录
    NOI Online 提高
    后缀数组
    待学
  • 原文地址:https://www.cnblogs.com/jiangson/p/9175371.html
Copyright © 2011-2022 走看看