C#中string的长度有上限吗?

如题所述

第1个回答  2023-12-03

String的最大长度=2的28次方 -1=268,435,455;

int32的最大值=2的31次方 -1=2,147,483,647。

那么在C#中,字符串最长能到多少?

1.  我们用 string.Length 读取字符串长度,它是int类型,所以理论上 Int32.MaxValue 就是string.Length 能达到的最大值;

2.  NET 中单个对象占内存不得超过2GB,使用unicode编码的字符串类型每个字符占2个bytes,所以能达到的最大长度为1,073,741,823。而且这个长度在32位系统中是无法满足的;


相似回答