<cfloat> (float.h)

来源:http://www.cnblogs.com/leihui/archive/2016/01/30/5172032.html
-Advertisement-
Play Games

頭文件: <cfloat> (float.h) 浮點類型的特性 這個頭文件為特殊系統和編譯器的實現描述了浮點類型的特征. 一個浮點數包含四個元素: 一個標誌(a sign):正或負; 一個基數(a base):這表示一串不同的數字能夠被一個個單一的數字所表示(2 就是二進位(binary),10就是


頭文件:

<cfloat> (float.h)


浮點類型的特性

這個頭文件為特殊系統和編譯器的實現描述了浮點類型的特征.

一個浮點數包含四個元素:

  • 一個標誌(a sign):正或負;
  • 一個基數(a base):這表示一串不同的數字能夠被一個個單一的數字所表示(2 就是二進位(binary),10就是十進位(decimal),16就是十六進位(hexadecimal)...);
  • 一個有效數(a significand):這是一系列前面所談到的基數的數字,在這一系列中數字的位數就是眾所周知的精度;
  • 一個指數(an exponent):它代表著有效數字的偏移量,用下麵的方式影響著其值:
  浮點數值 = 有效數 x 基數 指數 ,(還有相應的標誌(sign))
  (image)

巨集常量


下麵的表格顯示了這個頭文件中定義的不同的變數的名稱和所有實現的最小值最大值
(具體的實現可能有的值比這個大或者小 按照說明):

  當一組巨集存以FLT_,DBL_和LDBL_為首碼時,以FLT_開頭的適用於float,以DBL_開頭的適用於double,以LDBL_開頭的適用於long double;

名稱 代表 表示
FLT_RADIX 2或者更大 基數 (radix)
所有浮點數類型的基數
FLT_MANT_DIG
DBL_MANT_DIG
LDBL_MANT_DIG
 

 尾數的位數

(MANTissa DIGits)

 有效數的精度,符合有效數字的位數
FLT_DIG
DBL_DIG
LDBL_DIG

6 或者更大

10 或者更大

10 或者更大

 精度

(DIGits)

 帶十進位的數能夠轉化為一個浮點數並且將其再次轉化回來時不改變整數數字

FLT_MIN_EXP
DBL_MIN_EXP
LDBL_MIN_EXP
   最小的指數 用於生成一個標準化的浮點數指數的最小負整數值
FLT_MIN_10_EXP
DBL_MIN_10_EXP
LDBL_MIN_10_EXP

-37 或者更小

-37 或者更小

-37 或者更小

 最小以10為基數的指數

用於生成一個標準浮點數的十進位指數表達式

的最小負整數

FLT_MAX_EXP
DBL_MAX_EXP
LDBL_MAX_EXP
   最大的指數  用於生成一個標準化的浮點數指數的最大整數值
FLT_MAX_10_EXP
DBL_MAX_10_EXP
LDBL_MAX_10_EXP

37 或者更大

37 或者更大

37 或者更大

 最大以10為基數的指數  

用於生成一個標準浮點數的十進位指數表達式

的最大整數

FLT_MAX
DBL_MAX
LDBL_MAX
1E+37 或者更大
1E+37 或者更大
1E+37 或者更大
 最大數  表示最大有限的浮點數
FLT_EPSILON
DBL_EPSILON
LDBL_EPSILON
1E-5 或者更小
1E-9 或者更小
1E-9 或者更小
 EPSILON :)
 能夠表示1和最小值的差大於1
FLT_MIN
DBL_MIN
LDBL_MIN
1E-37 或者更小
1E-37 或者更小
1E-37 或者更小
 最小數  表示最小有限的浮點數
FLT_ROUNDS    舍入方式

 舍入行為,可能的值:

-1:未確定的

0:向0舍入

1:四捨五入

2:向正無窮

3:向負無窮

*適用於所有浮點類型(float,double和long double)

FLT_EVAL_METHOD    賦值方式

 賦值格式的屬性,可能的值:

-1:未確定的

0:賦值類型的範圍和精度

1:賦值時將float和double當作double,

long double 當作long double

2:賦值時所有都當作long double,其它負數都表示為實現的定義(implementation-defined)行為

*適用於所有浮點類型

DECIMAL_DIG    小數精度

 可以將一個十進位數轉化一個浮點類型的數字,

並且再次轉為到與原來一樣的數字時不丟失精度

 

通用性


 

 

FLT_EVAL_METHOD DECIMAL_DIG 是在符合C99標準的庫中定義的或者只在符合C11的庫中

請參閱


 

<climits> (limits.h) 整數類型的大小

 

/*

  第一次修改時間:2016年1月30日 20:32:35

*/

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 作業: 使用正則表達式和遞歸實現計算器功能。 實現: 1、實現帶括弧的計算 2、實現指數、加減乘除求餘等功能 一、實例說明: 本實例自己寫了個版本,但依舊存在一點bug,例:-2-2等計算問題,故最後在武SIR的代碼基礎上加了指數、求餘等功能。 該計算器思路: 1、遞歸尋找表達式中只含有 數字和運算
  • Python是跨平臺的語言,也即是說同樣的源代碼在不同的操作系統不需要修改就可以同樣實現 因此Python的作者就倒騰了OS模塊這麼一個玩意兒出來,有了OS模塊,我們不需要關心什麼操作系統下使用什麼模塊,OS模塊會幫你選擇正確的模塊並調用 os模塊中關於文件/目錄常用的函數使用方法os.path模塊
  • 轉載:http://blog.csdn.net/afgasdg/article/details/12757433
  • 1.主要學習這程式的編寫思路 a.讀取解釋網站 b.找到相關頁 c.找到圖片鏈接的元素 d.保存圖片到文件夾 ..... 將每一個步驟都分解出來,然後用函數去實現,代碼易讀性高. ##代碼儘快運行時會報錯,還須修改 import urllib.request import os def url_op
  • 線程問題我會分成三篇文章來給大家做個詳細的講解 一、線程的概念 1.線程是進程的組成部分,一個進程可以擁有多個線程,一個線程必須有一個父線程; 2.線程擁有自己的堆棧、自己的程式計數器和自己的局部變數,但不再擁有系統資源,它與父線程中的其他線程共用該進程所擁有的全部資源 3.線程是獨立運行的,它並不
  • 會話技術: 會話:瀏覽器訪問伺服器端,發送多次請求,接受多次響應。直到有一方斷開連接。會話結束。 解決問題:可以使用會話技術,在一次會話的多次請求之間共用數據。 分類: 客戶端會話技術 Cookie 伺服器端會話技術 Session 客戶端會話技術:Cookie 小餅干的意思 伺服器端不需要管理,方
  • 一個成熟的大型網站(如淘寶、京東等)的系統架構並不是開始設計就具備完整的高性能、高可用、安全等特性,它總是隨著用戶量的增加,業務功能的擴展逐漸演變完善的,在這個過程中,開發模式、技術架構、設計思想也發生了很大的變化,就連技術人員也從幾個人發展到一個部門甚至一條產品線。 (歡迎大家訪問我的個人網站:工
  • 話題從重用開始說起: 最基本的重用,重用一個方法,被重用的邏輯被抽取封裝成為方法,之後我們把方法當成一種工具來使用(處理數據,輸入輸出,或者改變狀態)。 來到了面向對象的時代,如果這個方法出現父類上面就是繼承,如果這個方法出現在其他對象上就是代理,如果子類想要重用父類的介面又不想重用實現那麼就是多態
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...