我知道十进制表示法的标准'e'指数,但是strtod的linux手册页上讲的是十六进制表示法:
十六进制数字由“ 0x”或“ 0X”组成,后跟一个可能包含一个基数字符的十六进制数字的非空序列,并可选地后面跟一个二进制指数。二进制指数由“ P”或“ p”组成,后跟可选的加号或减号,后跟一个非空的十进制数字序列,并表示乘以2的幂。基数字符和二进制指数中的至少一个必须存在。
使用C编译器:0x0123456789ABCDEFp019
等于4.2984030182685396e+22
,但我自己无法成功实现。