我正在读的方式,整数如何存储在c中的变量中,最后一位用于整数的符号,其余的位用于存储数字。
但是如果我们在c中取一个double变量和long int变量,两者都有4个字节的大小,但是float可以存储非常大的数字,最大范围是10 38 但是很长相同大小的int不能存储如此巨大的价值。
我想了解浮动存储中使用的机制。
答案 0 :(得分:5)
C语言不要求 floating point个数字的任何特定表示。
今天,大多数C实现都使用IEEE floating numbers(异常是不常见的,可能是IBM的一些Series Z大型机。)
答案 1 :(得分:5)
可以找到完整的解释here。基本上,这个数字并没有完全存储,只是大约。 32位用于存储尽可能多的精度。