C语言中能用IEEE 754标准的十六进制形式赋值浮点数吗?比如float f=0x40a80000(对应的十进制形式应该是5.25); 输出时直接以十进制形式输出,但结果不是5.25。到底怎么表示16进制形式赋值啊?
由于对于0x40a80000这类16进制写法,编译器都会默认其为整数,所以不能这样去做。故而无法实现你的设想。如果你非要以十六进制形式赋值浮点数,那么只能通过其他途径了。
比如说这样写:
char cc[4] = {0x00,0x00,0xa8,0x40}; // 因为window为小端模式所以低字节存放在低地址,高字节存放在高地址