【问题标题】:Why the Size of int specifically is 4 byte in C#?为什么 int 的大小在 C# 中具体是 4 字节?
【发布时间】:2015-09-10 05:37:42
【问题描述】:

int 的大小在 c 中是 2 字节,在 c# 中是 4。为什么会这样?。为什么不像 c 那样 2 字节。我也在网上搜索过,但我没有找到任何东西。我正在寻找真正的技术原因。

【问题讨论】:

    标签: c# .net c#-4.0 int clr


    【解决方案1】:

    这是不正确的。 C 中 int 的大小可以是 2、4 或 8 个字节,具体取决于您将程序编译为 16 位、32 位还是 ILP64,但现在几乎总是 32 位。

    32 位整数类型通常具有最短和最简单的名称,因为当今大多数计算机在处理 32 位数据时运行效率最高。 64 位机器运行 32 位代码的速度比 32 位机器处理 64 位数字的速度要快得多。虽然int 可能(有时是)在 64 位机器上定义为 64 位,但在编译在 32 位机器上编写和测试的代码时,这可能会引入许多细微的错误。

    如果您想使用精确的位数,两种语言都有一些类型可以让您指定精确的宽度。

    【讨论】:

      【解决方案2】:

      在 C# 中,int 表示 Int32,即 int 是 Int32 的别名。因此 int 始终是 32 位,相当于 4 个字节。并使其兼容32位和64位平台。如果你写 Int64 那么它是 8 个字节。

      你可以参考这个 MSDN:What is the size of int in c#

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-01-25
        • 1970-01-01
        • 2012-08-28
        • 1970-01-01
        • 2019-02-08
        • 1970-01-01
        相关资源
        最近更新 更多