2013-05-08 33 views
1

綁定不整常數我在頭文件2D陣列,爲此,我聲明兩者的大小:錯誤:陣列中的頁眉

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}}; 

我得到這個錯誤:數組結合不是一個整數常量。

我的二維數組不是動態變化的,我聲明瞭這些數組的大小(numPaths和pathLength)。我不確定問題是什麼?

回答

1

numPathspathLength不是常量,就像錯誤消息所述。您需要:

#define numPaths 2 
#define pathLength 11 

一些編譯器將讓你得逞的:

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

作爲擴展。

+0

嚴格來說,你不需要* #define,畢竟一個整數常量只是一個普通數字......但是如果你想使用一個名字,它需要是一個#define。 – 2013-05-08 04:20:09

+0

的確如此 - 我從一個假設OP開始想使用符號名稱的原因出發。 – 2013-05-08 04:20:32