如何将strtod的'P'二进制指数符号转换为十进制?

时间:2019-12-24 10:00:46

标签: c floating-point strtod

我知道十进制表示法的标准'e'指数,但是strtod的linux手册页上讲的是十六进制表示法:

  

十六进制数字由“ 0x”或“ 0X”组成,后跟一个可能包含一个基数字符的十六进制数字的非空序列,并可选地后面跟一个二进制指数。二进制指数由“ P”或“ p”组成,后跟可选的加号或减号,后跟一个非空的十进制数字序列,并表示乘以2的幂。基数字符和二进制指数中的至少一个必须存在。

使用C编译器:0x0123456789ABCDEFp019等于4.2984030182685396e+22,但我自己无法成功实现。

0 个答案:

没有答案