我是靠谱客的博主 坚定柜子,最近开发中收集的这篇文章主要介绍c\c++带精度数据类型比较大小,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

cc++带精度数据类型比较大小

List item

  • float占4byte,精度是6-7位,double占8byte,精度是15~16位。 (注意:3.14的有效位数为3。)

  • double(双精度)、float(单精度)类型都是有精度的,当达到精度最大位数的后一位采样四舍五入的方法。因此带有精度的数据不能直接使用"==“进行比较大小,要转化为”>=“或者”<="进行。

例如:当第8位小于5时,输出1,认为相等,大于等于5时,认为不相等。(精度:范围值)
在这里插入图片描述
正确做法:

const double EPS = 1e-6;  //一般这样子就够,但有时具体题目要考虑是否要更小的 
		if(fabs(a-b) < EPS)  //判断是否相等 
		if(a > b+EPS)   // 判断a是否大于b,因为大的肯定大,所以即使你小的加上,还是会更大 

注意: float c=3.14; //默认是double型的, float c=3.14f; 后面加f,才是告诉编译器是float型。

在这里插入图片描述
在这里插入图片描述

最后

以上就是坚定柜子为你收集整理的c\c++带精度数据类型比较大小的全部内容,希望文章能够帮你解决c\c++带精度数据类型比较大小所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(73)

评论列表共有 0 条评论

立即
投稿
返回
顶部