理想情况下,以下代码将采用 IEEE 754 表示形式的浮点数并将其转换为十六进制
void convert() //gets the float input from user and turns it into hexadecimal
{
float f;
printf("Enter float: ");
scanf("%f", &f);
printf("hex is %x", f);
}
我不太确定出了什么问题。它将数字转换为十六进制数字,但非常错误。
123.1443 gives 40000000
43.3 gives 60000000
8 gives 0
所以它在做某事,我只是不太确定是什么。
帮助将不胜感激