错误:数组绑定不是标头中的整数常量

时间:2013-05-08 04:14:43

标签: c arrays header-files multidimensional-array

我在头文件中有二维数组,我为此声明了两者的大小:

    int numPaths = 2;
    int pathLength = 11;
    double x[numPaths][pathLength] = {{62, 114, 0, 73, 55, 21, -28, -93, 0, 0, 0},{-90, 208, 0, 4, 7, 10, 12, 13, 11, -198, -147}};
    double y[numPaths][pathLength] = {{55, 88, 0, -42, 12, 45, 54, 40, 0, 0, 0},{269, -117, 0, -10, -14, -17, -20, -24, -69, -82, 20}};

我收到此错误:数组绑定不是整数常量。

我的2D数组没有动态变化,我已经声明了这些数组的大小(numPaths和pathLength)。我不确定问题是什么?

1 个答案:

答案 0 :(得分:1)

numPathspathLength不是常量,就像错误消息所说的那样。你需要:

#define numPaths 2
#define pathLength 11

有些编译器会让你逃脱:

const int numPaths = 2;
const int pathLength = 11;

作为延伸。