索引超出了数组界限 用户代码未处理 System.IndexOutOfRangeException

.net中 stringsplit=";";       string[]tolist=T... .net中 string split = ";";        string[] tolist = To.Text.Trim().Split(split.ToCharArray());        for (int i = 0; i <= tolist.Length; i++)        {            mailmasg.To.Add(tolist[i].Trim());        }        //添加收件人地址        string[] cclist = CC.Text.Trim().Split(split.ToCharArray());        for (int i = 0; i <= cclist.Length; i++)        {            mailmasg.CC.Add(cclist[i].Trim());        }测试报错说索引超出数组界限 求教 !!!!! 展开
 我来答
死后是好人
2011-08-29 · TA获得超过2638个赞
知道小有建树答主
回答量:628
采纳率:0%
帮助的人:964万
展开全部
for (int i = 0; i <= cclist.Length; i++)
你这里出错了
cclist.Length是数组的元素数量
但是我们用的时候cclist[i],i表示的是数组的下标
如果cclist里有5个数据的话,那么这5个数据的下标分别对应0 1 2 3 4
如果用for(int i=0;i<=5;i++)取用,那么读取的下标对应的是0 1 2 3 4 5
这个5下标已经超出数组的范围了
所以楼主这里要改为
for (int i = 0; i < tolist.Length; i++)
或者是
for (int i = 0; i <= tolist.Length-1; i++)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
水千柳CZ
2011-08-29 · TA获得超过351个赞
知道答主
回答量:86
采纳率:0%
帮助的人:161万
展开全部
string[] defines an array, usually array's index starts from 0 and ends with the array's length-1.

For example, an array list1 of length 3, there are 3 elements in the array, they are list1[0], list1[1], and list1[2]. If you visit list1[3], since it is the *FOURTH* element of the array, you will get the error: index out of bounds.

In your code, you should use the following code to loop through an array:
for (int i = 0; i < cclist.Length; i++) {
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式