C#中string的最大长度是多少

 我来答
wendyyou9
高粉答主

2018-04-12 · 说的都是干货,快来关注
知道大有可为答主
回答量:283
采纳率:100%
帮助的人:9.4万
展开全部

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位系统中是无法满足的;


freeeeeewind
2016-11-07 · TA获得超过1万个赞
知道大有可为答主
回答量:3227
采纳率:94%
帮助的人:1312万
展开全部
C#中的string类型,对应于.net基础类中的String类型。
按MSND文档,String类的Length属性的类型为int。而int的最大值为2147483647。所以string的最大长度为2147483647(2,147,483,647)。
注意:string最大长度是值string包含字符的最大数量。在.net中,每个字符占用的字节数量由编码方式决定。通常,一个字符的编码至少1个字节;有的字符编码,例如UTF8编码中,一个汉字字符(汉字)占用3~4个字节。所以,如果以字节数量来表示,string最大长度肯定比2147483647大!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
376710727
推荐于2017-12-15 · TA获得超过8937个赞
知道大有可为答主
回答量:2593
采纳率:100%
帮助的人:1245万
展开全部
C#中 string 类型其实在后台中表现为用指针连接的线性表 ,也就是链表。
也就是说,理论上,你的内存有多大,其中给应用程序分配的栈空间有多大,你的string就可以多大。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sky496967173
2016-11-08 · TA获得超过2.7万个赞
知道大有可为答主
回答量:4060
采纳率:80%
帮助的人:593万
展开全部
长度是没有限度的~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式