[英]MAXFLOAT in Objective-C
Max float被定義為:
文件math.h
#define MAXFLOAT 0x1.fffffep+127f
我有點難過,我以前從未注意到這一點。 這究竟是什么意思? 我原以為這樣:
#define MAXFLOAT 0xFFFFFFFF-1
那甚至會起作用嗎?
0x1.fffffep+127
是(大致)1.99999999999999999999998乘以2 ^ 127。 它是一個浮點數,帶有十六進制的指數。
0x
=十六進制表示法 1
=數字的整數部分 .fffffe
=數字的小數部分 p+127
=“第二次到第127次冪”的科學記數法 UNIX一致性需要MAXFLOAT
:
MAXFLOAT
[XSI]最大非無限單精度浮點數的值。
0x1.fffffep+127f
正是該值,表示為標准C十六進制浮點字面值。
C標准要求FLT_MAX
在<float.h>
定義,並且它具有相同的值(“最大可表示的有限浮點數”,根據§5.2.4.2.2)。 FLT_MAX
是更便攜的選擇,因為它是語言標准所要求的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.