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

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.¢% 閱讀(717) 評論(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>
            亚洲国产视频直播| 欧美成人在线免费观看| 中国av一区| 国产精品一区2区| 性色av一区二区三区| 亚洲欧美三级在线| 国内精品视频一区| 亚洲大片av| 欧美日韩免费观看一区=区三区| 欧美视频在线观看视频极品| 亚洲欧美亚洲| 久久视频在线免费观看| 亚洲欧洲综合另类| 亚洲一区在线看| 黄色小说综合网站| 亚洲精品视频在线看| 国产欧美精品一区二区色综合| 久久久久www| 欧美激情视频在线免费观看 欧美视频免费一 | 欧美国产日韩视频| 欧美性视频网站| 久久久亚洲精品一区二区三区| 欧美成人乱码一区二区三区| 香蕉精品999视频一区二区| 久久久人成影片一区二区三区 | 亚洲欧洲三级| 亚洲欧美日韩精品在线| 亚洲区第一页| 午夜精品婷婷| 亚洲午夜伦理| 老司机免费视频久久| 亚洲综合色网站| 米奇777在线欧美播放| 久久高清国产| 国产精品久久国产精麻豆99网站| 蜜桃伊人久久| 国产视频精品网| 亚洲精选视频免费看| 狠色狠色综合久久| 亚洲一区国产| 亚洲亚洲精品三区日韩精品在线视频 | 欧美中文字幕在线观看| 欧美国产一区在线| 麻豆国产精品777777在线 | 欧美伦理91i| 欧美h视频在线| 国产一区二区日韩| 亚洲一区免费在线观看| 一区二区精品| 欧美日韩国产成人| 亚洲二区精品| 亚洲日本欧美在线| 免费在线日韩av| 欧美凹凸一区二区三区视频| 黄色成人片子| 久久成人免费日本黄色| 久久精品99无色码中文字幕 | 国产精品视频1区| 夜夜夜精品看看| 亚洲午夜电影网| 国产精品99免费看| 一本在线高清不卡dvd| 亚洲一区影音先锋| 欧美性色aⅴ视频一区日韩精品| 91久久精品一区| 99re在线精品| 欧美性猛交99久久久久99按摩| 亚洲精品国产品国语在线app| 亚洲伦理精品| 欧美色偷偷大香| 亚洲天堂av在线免费观看| 午夜精品999| 国产一区在线免费观看| 久久国内精品自在自线400部| 久久综合色88| 日韩亚洲成人av在线| 欧美女同在线视频| 亚洲一区二区在| 久久久91精品国产| 亚洲国产第一| 欧美三区免费完整视频在线观看| 一区二区免费在线观看| 久久国产精品99国产| 精品999日本| 欧美日韩国产免费观看| 亚洲欧美日韩成人高清在线一区| 久久久水蜜桃| 亚洲六月丁香色婷婷综合久久| 欧美视频导航| 久久久精品视频成人| 亚洲日本aⅴ片在线观看香蕉| 亚洲欧美日韩精品一区二区| 国产亚洲一区二区在线观看| 麻豆精品一区二区av白丝在线| 亚洲精品国产精品国自产观看浪潮 | 麻豆精品视频在线观看视频| 亚洲日本免费电影| 久久精品二区三区| 亚洲毛片av在线| 国产日韩一区| 欧美精品一区二区三区蜜桃| 亚洲欧美成人网| 亚洲国产精品高清久久久| 欧美亚洲一级| 99亚洲精品| 激情欧美一区二区三区在线观看| 欧美日韩精品欧美日韩精品| 欧美中文字幕在线播放| 99人久久精品视频最新地址| 老司机精品视频一区二区三区| 中文无字幕一区二区三区| 狠狠色丁香婷婷综合影院| 欧美性猛交xxxx乱大交退制版| 老司机午夜精品视频| 先锋影音网一区二区| 亚洲伦理一区| 亚洲国产女人aaa毛片在线| 久久久免费av| 欧美一区二区精美| 亚洲先锋成人| 日韩香蕉视频| 亚洲人成毛片在线播放| 激情小说另类小说亚洲欧美| 国产精品久久久久久亚洲毛片| 欧美激情第一页xxx| 久久视频国产精品免费视频在线 | 欧美国产欧美综合| 欧美jizzhd精品欧美巨大免费| 久久黄金**| 久久久7777| 久久精品视频播放| 欧美在线观看一区| 欧美一区二区三区免费观看| 亚洲午夜久久久久久久久电影网| 亚洲精品日韩在线观看| 亚洲激情欧美激情| 亚洲人成人一区二区三区| 亚洲国产精品久久久久| 亚洲电影观看| 亚洲国产精品激情在线观看| 在线成人免费观看| 亚洲国产日韩欧美| 亚洲靠逼com| 亚洲视频导航| 午夜精品电影| 久久久久久久久久码影片| 久久久夜夜夜| 免费观看欧美在线视频的网站| 久久永久免费| 亚洲国产精品专区久久| 亚洲欧洲一区二区天堂久久| 日韩一级裸体免费视频| 99精品视频免费观看视频| 亚洲视频图片小说| 欧美一区国产二区| 榴莲视频成人在线观看| 欧美日本二区| 国产精品在线看| 伊人久久亚洲热| 日韩视频免费观看| 亚洲欧美一区二区原创| 久久av一区二区三区| 裸体歌舞表演一区二区| 亚洲人成人一区二区在线观看| 一本色道久久| 欧美在线日韩精品| 欧美成人精品1314www| 欧美视频二区36p| 黄网站色欧美视频| 亚洲乱码国产乱码精品精可以看 | 亚洲欧美日韩视频二区| 久久中文在线| 99在线精品观看| 亚洲欧美变态国产另类| 免费一级欧美在线大片| 国产精品久久久久久久9999| 一区精品久久| 亚洲欧美日韩国产综合| 久久综合伊人77777蜜臀| 亚洲欧洲一区二区三区在线观看 | 久久网站热最新地址| 欧美视频免费在线| 亚洲福利视频一区二区| 午夜在线成人av| 亚洲国产欧美在线人成| 亚洲欧美日韩国产中文 | 欧美在线啊v| 欧美三级在线播放| 亚洲国产成人精品久久| 香蕉久久a毛片| 亚洲美女少妇无套啪啪呻吟| 久久精品91久久久久久再现| 国产精品极品美女粉嫩高清在线| 1024国产精品| 久久精品一区蜜桃臀影院| 日韩视频在线观看| 欧美成人午夜激情视频| 在线 亚洲欧美在线综合一区| 欧美一区精品| 亚洲天堂av图片|