【问题标题】:Is there any existing function to get MAX length of String type in C# library [duplicate]是否有任何现有函数可以在 C# 库中获取字符串类型的 MAX 长度 [重复]
【发布时间】:2018-06-22 09:51:01
【问题描述】:

我知道在 C# 中你可以使用 int.MaxValuelong.MaxValue 来获得这两种类型的最大值,我想知道是否有类似的方法来获得字符串的最大长度。

我没有看到它here。 另外,我知道已经有关于最大字符串长度的问题。 Max string length in C#

我在问是否有一个可用的现有函数,您可以使用它来设置条件何时以及何时不截断您的字符串以避免程序崩溃。 或者正常的做法是什么?

例如也许像Max(string.length) 这样简单?

【问题讨论】:

  • 如果您知道这个问题 - 它也会给出答案
  • 没有。就像没有已知方法可以找到数组的最大长度一样。在分配数组之前,您无法知道是否有足够的虚拟地址空间和足够的物理内存来容纳它。

标签: c# string max


【解决方案1】:

没有。就像没有已知的方法可以找到可以分配的数组的最大长度一样。在您尝试分配内存之前,您无法知道是否有足够的虚拟地址空间和足够的物理内存来容纳它。从理论上讲,您可以VirtualAlloc(Windows API)越来越大的内存块直到它失败,释放块然后尝试在.NET中分配相同数量的内存,知道内存在那里所以.NET应该能够分配它。

请注意,这在 32 位时是正确的……我从未见过 64 位时出现内存不足错误。

【讨论】:

  • 感谢您提供额外信息。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-26
  • 1970-01-01
  • 2019-07-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多