Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#将结构字符串保存到文件中时出错_C# - Fatal编程技术网

C#将结构字符串保存到文件中时出错

C#将结构字符串保存到文件中时出错,c#,C#,有人能帮我解决这个问题吗? 因此,在第70行和第75行,我在数组中输入了一个新值,但我得到了这个错误: 未处理的异常:System.IndexOutOfRangeException:索引超出数组的边界。 在Application.Main()中:0 [错误]致命的未处理异常:System.IndexOutOfRangeException:索引超出了数组的边界。 在0中的Application.Main()处 代码: 谢谢 获取异常的位置上的代码: num_players = num_playe

有人能帮我解决这个问题吗? 因此,在第70行和第75行,我在数组中输入了一个新值,但我得到了这个错误:

未处理的异常:System.IndexOutOfRangeException:索引超出数组的边界。
在Application.Main()中:0
[错误]致命的未处理异常:System.IndexOutOfRangeException:索引超出了数组的边界。
在0中的Application.Main()处

代码:


谢谢

获取异常的位置上的代码:

num_players = num_players + 1;
Array.Resize(ref players, num_players);
players[num_players].Name = s;
resize语句将数组调整为索引范围为0到num_-1的数组。您可以使用的最高索引是num_playes-1

因此,如果您尝试访问玩家[num_players],则可能会出现异常

调整阵列大小是一项非常昂贵的操作。通常,如果您确信数组的大小不会改变,人们建议只使用数组。在所有其他情况下,使用列表。您将永远不必调整它的大小,只需添加元素,它们将被添加到列表的末尾

顺便说一下,我在您的代码中看到了一些奇怪的东西:

for(int k = 0; k == num_players; k--)
{
     players[k] = players[k + 1];
}

所以你从k=0开始;做你的事情,做k-,给你一个k=-1的值。我几乎不相信这就是你想要做的。

你想让我们猜猜70行和75行写的是什么吗?请添加你的代码和几句关于你想要实现的目标的句子。也考虑适当的格式化,这只是不可更新的代码,请不要在外部链接你的代码,而是把它嵌入到问题中。提示:一个10个项目的数组有9个最后的索引,因为它在0开始计数。