我总是被期待着';,标识符或';(';before';void';void createCell(结构单元myCell,int类型,int不可变)

我总是被期待着';,标识符或';(';before';void';void createCell(结构单元myCell,int类型,int不可变),c,linux,C,Linux,因此,我一直让编译器告诉我,在我的第一个函数声明之前有一个错误。在此之前,我定义了一个枚举(在我的第一个函数之前),然后它告诉我相同的错误,但就在枚举声明之前 错误:“应为“;”、标识符或“(”在“void”void之前 createCell(结构单元myCell,int类型,int不可变)” #包括 #包括“dungeon.h” #定义真1 #定义false 0 #定义最大值x 20 #定义最大值79 //为什么这里需要一个标识符// void createCell(结构单元myCell,in

因此,我一直让编译器告诉我,在我的第一个函数声明之前有一个错误。在此之前,我定义了一个枚举(在我的第一个函数之前),然后它告诉我相同的错误,但就在枚举声明之前

错误:“应为“;”、标识符或“(”在“void”void之前 createCell(结构单元myCell,int类型,int不可变)”

#包括
#包括“dungeon.h”
#定义真1
#定义false 0
#定义最大值x 20
#定义最大值79
//为什么这里需要一个标识符//
void createCell(结构单元myCell,int类型,int不可变)
{
如果(类型==0)
myCell.type=“”;
如果(类型==1)
myCell.type=“#”;
如果(类型==2)
myCell.type=“.”;
myCell.immutable=不可变;
}
void border_生成器(结构单元单元[21][80]){
int i,j;
对于(i=0;i<21;i++){
对于(j=0;j<80;j++){
如果(i==0 | | i==max_x)
{
createCell(cells[i][j],0,true);
printf(“-”);
}
else如果(i>0&(j==0 | | j==max|y))
{
createCell(cells[i][j],0,true);
printf(“|”);
}
否则{
createCell(单元格[i][j],0,false);
printf(“%c”,单元格[i][j]。类型);
}
如果(j==max_y){
printf(“\n”);
}
}
} 
}
空房间_发生器()
{
}
int main(int argc,char*argv[])
{
结构细胞[21][80];
边界单元生成器(单元);
返回0;
}

在“dungeon.h”的末尾,结构或联合定义没有以分号(“;”)结尾

很容易重现同样的错误:

$ cat | cc -x c -
# 0 "dungeon.h"
struct foo { int x; }
# 3 "main.c"
void createCell(void){}
^D
main.c:3:1: error: expected ‘;’, identifier or ‘(’ before ‘void’

在“dungeon.h”的结尾处,结构或联合定义没有以分号(“;”)结尾

很容易重现同样的错误:

$ cat | cc -x c -
# 0 "dungeon.h"
struct foo { int x; }
# 3 "main.c"
void createCell(void){}
^D
main.c:3:1: error: expected ‘;’, identifier or ‘(’ before ‘void’

什么在
地下城.h
?什么在
地下城.h
?谢谢!我是C新手,对不起。谢谢!我是C新手,对不起。