我是 C# 的初学者。无论我为以下代码尝试过什么,我都会得到 Index out of range 异常:
double[,] mysine = new double[0, NumPoints];
double s = (2 * Math.PI) / NumPoints;
for (int i = 0; i < NumPoints; i++)
{
mysine[0, i] = Math.Sin(i * s) + 1;
}
数组大小是 NumPoints,我的循环从零到 (NumPoints-1) 循环,这不会出错。我也尝试了其他的东西,但无法解决。我还有其他错误吗?
答案 0 :(得分:3)
double[,] mysine = new double[0, NumPoints];
应该
double[,] mysine = new double[1, NumPoints];
括号之间的数字定义了数组的大小,而不是最大索引。 所以当使用 0 时,你实际上定义了一个不可用的数组。