有幾個人在這裏評論我的C代碼,說我應該使用常量作爲循環計數器,而不是難寫它們。我同意他們,因爲這是我編寫Java代碼時的做法,但是當我嘗試在數組聲明和循環條件中使用常量時,我遇到了編譯時錯誤。C常量拋出編譯時錯誤
要在C中聲明常量,語法是#define NAME value
。
在我的代碼中,我有兩個常量,BUFFER
是文件讀取緩衝區,而PACKED
是輸出數組大小。
我用BUFFER
初始化char inputBuffer[BUFFER];
作爲一個全局變量,它的工作原理,但是當我嘗試使用PACKED
#define PACKED 7; // this line is in the header of file, just below preprocessors
int packedCount;
char inputPack[PACKED]; //compression storage
for (packedCount=0; packedCount<= PACKED; packedCount++){
我得到的循環起始線是在char inputPack[PACKED]
error: expected ‘]’ before ‘;’ token
和
error: expected expression before ‘;’ token
。當我7
你在'char inputPack [PACKED]'末尾缺少一個分號' – Marlon 2011-03-05 13:39:01
正如馬龍所說的那樣。這是一個錯字嗎? – wong2 2011-03-05 13:40:56
請準確粘貼你編譯的代碼 – wong2 2011-03-05 13:42:58