【问题标题】:Array Length/LongLength in .NET [duplicate].NET 中的数组长度/LongLength [重复]
【发布时间】:2011-03-18 11:00:15
【问题描述】:

可能重复:
What is the maximum length of an array in .NET on 64-bit Windows

.NET 中 x86 平台上数组的确切最大理论大小是多少?是由Int32.MaxValue 还是UInt32.MaxValue 给出的?

【问题讨论】:

  • 我最多只能说是间接重复,这个问题本身肯定会给你一种他们没有重复的印象,但最终的答案似乎是一样的。
  • 这也是理论上的限制,因为地址空间本身在 32 位 Windows 上受 2GB 限制,因此在 CLR 中不允许任何程序达到该限制。

标签: c# arrays


【解决方案1】:

理论上它使用 int 有 2,147,483,647 个项目(即 2GB)。但是,鉴于数组是一个连续的内存块,并且一个进程只能拥有 2GB 的用户空间,您将永远无法真正填充这种大小的数组,因为您的用户空间中将包含代码和其他应用程序数据将减少可用空间。

【讨论】:

【解决方案2】:

Int32.MaxValue

的值决定

【讨论】:

    猜你喜欢
    • 2010-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-22
    • 1970-01-01
    相关资源
    最近更新 更多