一、前言

double类型不能判断相等,那么如何判断等于呢,见下文,脑瓜子疼啊,以为时bug,结果还是基础犯了错误。。

二、环境

windows10

qt57

三、正文

double类型的浮点数,保留一位之后,用变量做判断条件

测试代码:

        double aaa=5.1234;double bbb=3.3922;double aa=QString::number(aaa,'f',1).toDouble();double bb=QString::number(bbb,'f',1).toDouble();qDebug()<<"aa="<<aa<<";bb="<<bb<<";aa-bb="<<aa-bb;if((aa-bb)>=1.7)qDebug()<<"通过判断条件";

打印信息如下:

没有进入if语句打印信息

修改判断结果和对应条件之后代码如下:

        double aaa=5.0234;double bbb=3.3922;double aa=QString::number(aaa,'f',1).toDouble();double bb=QString::number(bbb,'f',1).toDouble();qDebug()<<"aa="<<aa<<";bb="<<bb<<";aa-bb="<<aa-bb;if((aa-bb)>=1.6)qDebug()<<"通过判断条件";

打印信息如下:

进入了判断条件

就是判断条件有7的时候,判断条件为double类型被转换位数之后,又经过再次运算,就会判断失败,其他数值正常。

解决方法如下:

        double aaa=5.1234;double bbb=3.3922;double aa=QString::number(aaa,'f',1).toDouble();double bb=QString::number(bbb,'f',1).toDouble();double ccc=aa-bb;double cc=QString::number(ccc,'f',1).toDouble();//重新处理,否则判断异常qDebug()<<"aa="<<aa<<";bb="<<bb<<";cc="<<cc;if(cc>=1.7)qDebug()<<"通过判断条件";

打印信息如下:

暂时这样解决。。。

四、结语

坑爹啊

qt之double类型判断相关推荐

  1. 深入理解C++浮点数(float、double)类型数据比较、相等判断

    深入理解C++浮点数(float.double)类型数据比较.相等判断 浮点数在内存中的存储机制和整型数不同,其有舍入误差,在计算机中用近似表示任意某个实数.具体的说,这个实数由一个整数或定点数(即尾 ...

  2. java double转换符_java中字符串怎么转换成double类型

    展开全部 public class Demo { public static void main(String[] args) { Demo demo = new Demo(); String str ...

  3. java 返回值判断_在Java中判断方法重载的条件除了参数外,还可以通过返回值类型判断。_学小易找答案...

    [单选题]若int x;且有下面的程序片断,则输出结果是() . for (x=3; x<6; x++) { printf((x%2) ? "##%d" : "** ...

  4. 17.C#类型判断和重载决策(九章9.4)

    今天来结束第九章,聊下我们经常忽略,但是编译器会帮我们完成的"类型判断和重载决策",理解编译器如何帮我们完成,相信在写代码时会更明确,避免一些编译出错,排查的问题,让我们开发更给力 ...

  5. java判断类型_Java中类型判断的几种方式 - 码农小胖哥 - 博客园

    1. 前言 在Java这种强类型语言中类型转换.类型判断是经常遇到的.今天就细数一下Java中类型判断的方法方式. 2. instanceof instanceof是Java的一个运算符,用来判断一个 ...

  6. 7-7 硬币找钱问题 (10 分)(思路+详解+double类型数据的处理)Come baby!!!!!!!!!!!!!!!!!!!!

    一:题目 设有6 种不同面值的硬币,各硬币的面值分别为5 分,1 角,2 角,5 角,1 元,2元.现要用这些面值的硬币来购物.在购物中希望使用最少个数硬币.例如,1 次购物需要付款0.55 元,如果 ...

  7. JS 相等判断 / 类型判断

    相等判断 JavaScript提供三种不同的值比较操作: 严格相等 ("triple equals" 或 "identity"),使用 === , 宽松相等 ( ...

  8. java 判断类型_Java中类型判断的几种方式

    在Java这种强类型语言中类型转换.类型判断是经常遇到的.今天就细数一下Java中类型判断的方法方式.拉勾IT课小编为大家提供java种类型判断方式. instanceof instanceof是Ja ...

  9. android double值排序,android根据Double类型数据经纬度算出距离再根据距离实现排序功能...

    前言 项目中用到全国的加油站数据加载 并根据经纬度算出距离 然后根据距离从小到大排序 主要是数据类型是Double 这里必须对数据进行封装 实现也不难 这里讲一下自己的实现方法和实现思路 效果图 先来 ...

最新文章

  1. 内核随记(三)--同步(2)【转】
  2. iOS 9应用开发教程之ios9中实现按钮的响应
  3. python100个必背知识-学Python必背的初级单词,你都背了吗?
  4. 如何对付“新垃圾邮件”?
  5. springMVC自定义方法属性解析器
  6. 网易云信联合墨刀,邀你参加【产品设计狂欢节】!
  7. wxWidgets:wxSingleInstanceChecker类用法
  8. sublime text 2 解决错误 [Decode error - output not utf-8]
  9. uBLAS——Boost 线性代数基础程序库
  10. 怎样用springboot开发cs_springboot 系列 springboot 初探
  11. Mendeley如何设置某期刊对应的参考文献格式?
  12. excel数组和查找and引用函数
  13. 面试时工作经验不足,如何才能打动HR?
  14. 由浅入深MFC学习摘记--第三部分
  15. jekyll 配置环境变量——zsh
  16. 双复合摆的动力学【牛顿法---拉格朗日法】两种方式
  17. 小白MacBook超级实战教程——装双系统WIN10
  18. java jts点到面的距离_jts-空间索引
  19. 预测算法——指数平滑法
  20. 多种卫星遥感数据反演光合有效辐射数据服务

热门文章

  1. vim使用系统剪贴板
  2. pycharm设置无法打开
  3. python分析《爱情公寓》电影评分为何2.7, 电影界的“拼多多”!(转)
  4. 2020-12-13# **链表的增删改查,逆置**
  5. Swagger2使用指南
  6. Git教程---Windows安装及命令使用(详细例子)
  7. power函数python_python中pow函数用法及功能说明
  8. python爬虫笔试题目_python爬虫工程师面试题
  9. vim插件vundle实战
  10. JS中NaN的认识与ISNaN函数的使用