程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> 獲取double的最大精度,獲取double精度

獲取double的最大精度,獲取double精度

編輯:C++入門知識

獲取double的最大精度,獲取double精度


 1 #typedef DyDouble double
 2 #typedef DyInt64 int
 3 DyDouble GetMaxPrecision(DyDouble db)
 4 {
 5   assert( sizeof(DyDouble ) == sizeof( DyInt64 ) );
 6   DyInt64 exp  = ((*((DyInt64*)& db) >>52) & 0x7ff) - 32;
 7   if( exp <=0 ) return 1e-299;
 8   exp  = expDelta << 52;
 9   DyDouble reErr = *((DyDouble*)&exp );
10   return reErr;
11 }

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved