0x1.f40000p 14 c语言啥意思?

这个是啥意思?
2025-05-11 00:51:21
推荐回答(1个)
回答1:

0x是16进制前缀;

1.f40000是一个16进制浮点数常量,表示尾数部分;

p是指数符号,表示后面的数字是用来指定指数部分,之所以不用常用的e(E),是因为e已用于16进制中,p大写小写都可;

14是表示是2的14次方,千万注意是2不是10。

整个就是表示一个16进制浮点数常量,转换成10进制后就是32000.000000。

下面有一个示例:

#include

int main()

{

double d=0x1p10;

double d1=0x1.f40000p14;

double d2=0X1.F40000P14;

printf("%lf\n",d);

printf("%lf\n",d1);

printf("%lf\n",d2);

return 0;

}