在32位和64位操作系统的双字节尺寸(The Double Byte Size in 32 bit

2019-06-25 11:03发布

是否有差异的双尺寸,当我在32位和64位环境中运行我的应用程序?

如果我没有记错在32位环境下的双会占用16位0之后,而在64位双会占用32位,是吗?

Answer 1:

没有,一个IEEE 754双精度浮点数通常是64个比特。 类似地,单精度float总是32位。

如果您的问题是关于C#和/或.NET特异性(作为标记将指示)中, 所有的数据类型大小都是固定的,独立于系统架构。 这是相同的如Java,但不同于C和C ++哪里型尺寸也从平台而异。

这是常见的积分类型对在C和C ++不同的体系结构不同的尺寸。 例如, int是16个位宽,16位DOS和32个位宽Win32中。 然而,IEEE 754标准是浮点计算是的尺寸无处不floatdouble ,你会发现在现实世界中的任何系统上有所不同- 20年前的double为64位,所以今天它。



Answer 2:

在c#双始终是8个字节(64位)



Answer 3:

它并没有改变。

一个简单的方法来检查,这是写一个简单的控制台应用程序

Console.WriteLine(Double.MaxValue);

编译到x86和x64两种。



文章来源: The Double Byte Size in 32 bit and 64 bit OS