青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

S.l.e!ep.¢%

像打了激速一樣,以四倍的速度運轉,開心的工作
簡單、開放、平等的公司文化;尊重個性、自由與個人價值;
posts - 1098, comments - 335, trackbacks - 0, articles - 1
  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

How to compare double or float in Cpp

Posted on 2010-03-06 16:13 S.l.e!ep.¢% 閱讀(722) 評論(0)  編輯 收藏 引用 所屬分類: VC

簡單方便型:

double i=90.02;
if (? (i-90.02) >= 0.00?)

How to compare double or float in Cpp

From MetaSharp

Jump to: navigation, search

Article Author(s): Audric Thevenet
All Rights Reserved.


language?: english definition of the double type

The following code is the best way I could come up with to work correctly with doubles. The float version is not provided yet, but after reading a bit the code, you should manage to easily extend it to floats. The most important functions here are:

  • GetExpoBase2() extracts the base2 exponent from the double (putting aside the sign bit and the mantissa)
  • Equals() gets the exponents (e1,e2) of both doubles (d1,d2) and the exponent (e3) of their difference (d1-d2), then the 2 doubles (d1,d2) are considered being equal only if their difference is close enough to 0. This is done comparing the exponents. Example: e3=-50 (meaning 2^-50) e1=-1 e2=-1 then e3-e2=-49 and e3-e1=-49 both less than -48. It means that e1 and e2 are equal because their difference significant bits are located 2^48 lower... hard to tell if it's clear enough, I'll edit later if I come up with a clearer explaination ^^

Download Double comparison Sample for VC2005

compare.cpp

// compare.cpp
#include "compare.h"

namespace metasharp
{
	inline int GetExpoBase2(double d)
	{
		int i = 0;
		((short *)(&i))[0] = (((short *)(&d))[3] & (short)32752); // _123456789ab____ & 0111111111110000
		return (i >> 4) - 1023;
	}

	bool	Equals(double d1, double d2)
	{
		if (d1 == d2)
			return true;
		int e1 = GetExpoBase2(d1);
		int e2 = GetExpoBase2(d2);
		int e3 = GetExpoBase2(d1 - d2);
		if ((e3 - e2 < -48) && (e3 - e1 < -48))
			return true;
		return false;
	}

	int 	Compare(double d1, double d2)
	{
		if (Equals(d1, d2) == true)
			return 0;
		if (d1 > d2)
			return 1;
		return -1;
	}

	bool	Greater(double d1, double d2)
	{
		if (Equals(d1, d2) == true)
			return false;
		if (d1 > d2)
			return true;
		return false;
	}

	bool	GreaterOrEqual(double d1, double d2)
	{
		if (Equals(d1, d2) == true)
			return true;
		if (d1 > d2)
			return true;
		return false;
	}

	bool	Less(double d1, double d2)
	{
		if (Equals(d1, d2) == true)
			return false;
		if (d1 < d2)
			return true;
		return false;
	}

	bool	LessOrEqual(double d1, double d2)
	{
		if (Equals(d1, d2) == true)
			return true;
		if (d1 < d2)
			return true;
		return false;
	}
}

compare.h

// compare.h
#ifndef COMPARE_H
#define COMPARE_H

namespace metasharp
{
	int 	Compare(double d1, double d2);
	bool	Equals(double d1, double d2);
	bool	Greater(double d1, double d2);
	bool	GreaterOrEqual(double d1, double d2);
	bool	Less(double d1, double d2);
	bool	LessOrEqual(double d1, double d2);
}

#endif
Retrieved from "
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久国产免费| 亚洲特色特黄| 午夜视频久久久久久| 日韩午夜免费| 久色婷婷小香蕉久久| 久久久精品国产免费观看同学 | 亚洲福利久久| 国产精品揄拍500视频| 亚洲精品久久久一区二区三区| 国内视频精品| 午夜精品视频在线观看| 亚洲影院污污.| 欧美日韩精品一本二本三本| 欧美国产成人精品| 伊人激情综合| 久久九九免费| 久久偷看各类wc女厕嘘嘘偷窃| 国产精品免费一区豆花| 中文精品视频一区二区在线观看| 91久久久久久久久久久久久| 久久婷婷麻豆| 免费中文字幕日韩欧美| **欧美日韩vr在线| 久久综合伊人77777| 免费观看一区| 亚洲国产日韩欧美在线动漫| 久久一区精品| 亚洲国产精品久久91精品| 亚洲精品乱码久久久久久蜜桃91 | 亚洲电影欧美电影有声小说| 久久国产欧美| 欧美成人精精品一区二区频| 亚洲人成毛片在线播放| 欧美大片专区| av成人黄色| 欧美一区亚洲| 韩国一区二区三区在线观看 | 老司机精品视频一区二区三区| 久久综合九色综合欧美就去吻| 在线精品一区二区| 欧美承认网站| 9l视频自拍蝌蚪9l视频成人| 午夜精品久久久久久99热| 国产美女精品免费电影| 久久精品欧美日韩| 亚洲国产精品日韩| 亚洲一区二区三区乱码aⅴ| 国产精品久久午夜| 久久精品视频导航| 亚洲国产成人久久| 亚洲欧美另类国产| 国内偷自视频区视频综合| 免费亚洲电影在线观看| 夜夜精品视频| 久久久久五月天| 99视频精品全国免费| 国产精品网站视频| 可以看av的网站久久看| 中文在线资源观看网站视频免费不卡 | 亚洲午夜三级在线| 国产又爽又黄的激情精品视频| 久久综合精品国产一区二区三区| 亚洲免费观看高清完整版在线观看熊| 先锋影院在线亚洲| 亚洲久色影视| 国产一区二区三区奇米久涩| 欧美福利电影网| 午夜影院日韩| 日韩一级二级三级| 免费日韩av片| 欧美综合激情网| 亚洲调教视频在线观看| 一区国产精品| 国产欧美精品va在线观看| 欧美激情综合五月色丁香| 欧美一区二区三区四区视频| 亚洲精品一区二区三区99| 久久久综合香蕉尹人综合网| 亚洲综合大片69999| 亚洲欧洲一区二区三区在线观看| 国产伦精品一区二区三区视频孕妇 | 欧美成人国产va精品日本一级| 亚洲自拍啪啪| 99pao成人国产永久免费视频| 国产一区二区三区久久久久久久久 | 欧美精品激情blacked18| 久久久久久久一区二区三区| 亚洲欧美日韩第一区| 日韩视频中文字幕| 亚洲二区视频在线| 玖玖国产精品视频| 久久av一区二区三区| 亚洲欧美日韩在线不卡| 亚洲视频在线二区| 国产精品99久久久久久宅男 | 久久国产欧美| 欧美中文字幕视频| 亚洲欧美福利一区二区| 一区二区三区免费观看| 99国产精品国产精品久久| 亚洲精品久久久久久一区二区| 欧美激情在线观看| 欧美国产日韩精品| 免费一区二区三区| 嫩草影视亚洲| 亚洲第一精品夜夜躁人人爽| 欧美大色视频| 亚洲承认在线| 亚洲激情黄色| 亚洲精品自在在线观看| 亚洲精品孕妇| 一本色道久久综合狠狠躁篇怎么玩| 亚洲啪啪91| aa级大片欧美三级| 亚洲一区二区成人| 亚洲欧美日韩专区| 欧美一级片久久久久久久| 欧美亚洲视频一区二区| 久久国产毛片| 欧美96在线丨欧| 欧美老女人xx| 欧美午夜片在线观看| 国产精品乱码久久久久久| 国产欧美日韩一区二区三区在线 | 亚洲一区二区视频| 欧美亚洲日本网站| 久久一区二区三区四区五区| 牛牛国产精品| 日韩一级黄色av| 亚洲欧美视频在线观看视频| 久久久999精品免费| 欧美福利视频网站| 国产精品久久久久一区| 狠狠色2019综合网| 亚洲精品四区| 午夜视频在线观看一区| 狂野欧美激情性xxxx欧美| 亚洲成色777777在线观看影院| 亚洲乱码国产乱码精品精98午夜| 亚洲无线一线二线三线区别av| 欧美一区二区三区视频在线观看| 美女尤物久久精品| 国产精品久久999| 精品成人国产| 这里只有视频精品| 久久久之久亚州精品露出| 亚洲欧洲在线免费| 久久www免费人成看片高清| 欧美国产国产综合| 国产自产精品| 中文在线不卡| 欧美激情日韩| 午夜精品视频在线观看| 欧美剧在线免费观看网站| 黄色亚洲网站| 亚洲天堂偷拍| 亚洲国产成人精品久久| 欧美一区二区三区日韩视频| 欧美色视频一区| 亚洲高清不卡av| 久久精品盗摄| 一片黄亚洲嫩模| 欧美激情第4页| 在线成人免费观看| 欧美一级艳片视频免费观看| 亚洲狠狠丁香婷婷综合久久久| 午夜激情久久久| 欧美日韩中文字幕精品| 亚洲日本免费| 欧美不卡视频一区| 欧美伊人久久| 国产精品综合久久久| 在线视频亚洲| 亚洲狠狠丁香婷婷综合久久久| 久久久久国内| 含羞草久久爱69一区| 欧美一区亚洲一区| 这里只有精品视频| 欧美日韩一区成人| 99av国产精品欲麻豆| 亚洲第一黄网| 美女999久久久精品视频| 狠狠干狠狠久久| 鲁大师影院一区二区三区| 欧美一区二区大片| 国产日韩一区二区| 欧美一区在线看| 欧美一区二区三区在线播放| 国产精品婷婷| 久久激情一区| 欧美亚洲专区| 国产综合一区二区| 免费看的黄色欧美网站| 久久蜜桃香蕉精品一区二区三区| 国产在线不卡| 免费看黄裸体一级大秀欧美| 久久久午夜精品| 91久久精品一区二区三区| 亚洲人成人一区二区在线观看| 欧美激情亚洲激情|