2009-04-15 58 views
1

我知道這是非常基本的,但它讓我難倒了一套...錯誤的定義,即使通過恆

在Objective-C,我試着寫一個數組:

const int BUF_SIZE = 3; 

static char buffer[BUF_SIZE+1]; 

但我得到的緩衝區的存儲大小不是恆定的。我如何讓Xcode意識到我將它設置爲常量,+ 1 ...?或者這是不可能的...?

謝謝......!

喬爾

回答

3

我認爲這是一個C的東西,如果我沒有記錯,C只允許指定用文字表達陣列尺寸(無任何標誌)。我只是使用#define常量作爲解決方法。

+0

謝謝 - 我完全忘了#DEFINE ... J – 2009-04-16 19:03:21

1

您可以使用枚舉:

enum 
{ 
    BUF_SIZE = 3 
}; 

或宏

#define BUF_SIZE 3 
1

偏偏GCC的東西,如:

#define LPBUFFER_LGTH ((int) (2*MS25)) 

爲好。 解決方法如上:硬編碼你想要的常數。我認爲問題在於「定義定義」即。兩次。