for循环中双数组的索引超出范围

Index out of range for a double array in a for loop

我是 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),这应该不会出错。我也尝试了其他事情,但无法解决。我是不是还有什么地方做错了?

double[,] mysine = new double[0, NumPoints];

应该是

double[,] mysine = new double[1, NumPoints];

括号中的数字定义了数组的大小,而不是最大索引。 因此,当使用 0 时,您实际上是在定义一个无法使用的数组。