有几个人在这里评论我的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