C语言中的浮点数表示法
Floating point number notation in C language
const float Q31_MAX_F = 0x0.FFFFFFp0F;
中的 p
是什么? 0xa
.b
pc
?
中的a
、b
、c
一般是什么
此表达式是否明确定义存储在 float32_t
中的二进制文件?
我在网上搜索过,但没有找到任何东西。
0x0.FFFFFFp0F
末尾的 F
很有趣。
What is p in const float Q31_MAX_F = 0x0.FFFFFFp0F;
?
p
是一些浮点数的十六进制*2十进制的2次方的指数指标。
它是 0x0.FFFFFF * p2 的十进制次方,而不是某些十六进制指数 0F
.
0x0.FFFFFFp0F
末尾的 F
(更常见的是 f
)表示常量是 float
而不是 double
。 F
不是指数的一部分。 值是0x0.FFFFFF*pow(2,0)
或正好 0.999999940395355224609375
Generally what is a, b and c in 0xa.bpc?
与0x0.FFFFFFp0F
,a
为0,b
为十六进制小数0.FFFFFF
或16777215/16,777,216 或 0.999999940395355224609375 并且 c
为 0.
Does this expression explicitly define binary stored in float32_t
?
带有 F
或 f
后缀的 0x0.FFFFFFp0F
是 float
.
类型的常量
float32_t
不是标准的 C 类型。
const float Q31_MAX_F = 0x0.FFFFFFp0F;
中的 p
是什么? 0xa
.b
pc
?
a
、b
、c
一般是什么
此表达式是否明确定义存储在 float32_t
中的二进制文件?
我在网上搜索过,但没有找到任何东西。
0x0.FFFFFFp0F
末尾的 F
很有趣。
What is p in
const float Q31_MAX_F = 0x0.FFFFFFp0F;
?
p
是一些浮点数的十六进制*2十进制的2次方的指数指标。
它是 0x0.FFFFFF * p2 的十进制次方,而不是某些十六进制指数 0F
.
0x0.FFFFFFp0F
末尾的 F
(更常见的是 f
)表示常量是 float
而不是 double
。 F
不是指数的一部分。 值是0x0.FFFFFF*pow(2,0)
或正好 0.999999940395355224609375
Generally what is a, b and c in 0xa.bpc?
与0x0.FFFFFFp0F
,a
为0,b
为十六进制小数0.FFFFFF
或16777215/16,777,216 或 0.999999940395355224609375 并且 c
为 0.
Does this expression explicitly define binary stored in
float32_t
?
带有 F
或 f
后缀的 0x0.FFFFFFp0F
是 float
.
float32_t
不是标准的 C 类型。