是否有差异的双尺寸,当我在32位和64位环境中运行我的应用程序?
如果我没有记错在32位环境下的双会占用16位0之后,而在64位双会占用32位,是吗?
是否有差异的双尺寸,当我在32位和64位环境中运行我的应用程序?
如果我没有记错在32位环境下的双会占用16位0之后,而在64位双会占用32位,是吗?
没有,一个IEEE 754双精度浮点数通常是64个比特。 类似地,单精度float
总是32位。
如果您的问题是关于C#和/或.NET特异性(作为标记将指示)中, 所有的数据类型大小都是固定的,独立于系统架构。 这是相同的如Java,但不同于C和C ++哪里型尺寸也从平台而异。
这是常见的积分类型对在C和C ++不同的体系结构不同的尺寸。 例如, int
是16个位宽,16位DOS和32个位宽Win32中。 然而,IEEE 754标准是浮点计算是的尺寸无处不float
和double
不 ,你会发现在现实世界中的任何系统上有所不同- 20年前的double
为64位,所以今天它。
在c#双始终是8个字节(64位)
它并没有改变。
一个简单的方法来检查,这是写一个简单的控制台应用程序
Console.WriteLine(Double.MaxValue);
编译到x86和x64两种。