Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C编译错误中的队列实现_C_Struct_Queue_Compilation - Fatal编程技术网

C编译错误中的队列实现

C编译错误中的队列实现,c,struct,queue,compilation,C,Struct,Queue,Compilation,我有一个使用链表的队列程序。当我编译它时,它有以下错误: 错误行中“*”标记>>之前应为“') 下面的代码为我正确编译 #define PLITHOS 10 typedef struct{ int embros,piso,adeia; int pinakas[PLITHOS]; }Q; Q oura_apo; void dimiourgia(Q *oura){ oura->embros=0; oura->piso=0; } int main() { } 下

我有一个使用链表的队列程序。当我编译它时,它有以下错误:

错误行中“*”标记>>之前应为“')


下面的代码为我正确编译

#define PLITHOS 10
typedef struct{    
int embros,piso,adeia;
int pinakas[PLITHOS];
}Q;
Q oura_apo; 

void dimiourgia(Q *oura){   
oura->embros=0;   
oura->piso=0;
}

int main() {
}

下面的代码为我正确编译

#define PLITHOS 10
typedef struct{    
int embros,piso,adeia;
int pinakas[PLITHOS];
}Q;
Q oura_apo; 

void dimiourgia(Q *oura){   
oura->embros=0;   
oura->piso=0;
}

int main() {
}

您应该将dimougia函数的定义放在struct声明和main之间。否则,您需要前面的声明:

void dimiourgia(Q *oura);

程序中的错误发生在何处并不十分清楚,但是,错误消息通常是在无法识别结构Q时获得的。

您应该将dimougia函数的定义放在结构声明和main之间。否则,您需要前面的声明:

void dimiourgia(Q *oura);

您的程序中哪里会发生错误还不是很清楚,但是,当无法识别结构Q时,通常会获得该错误消息。

where is main?您是否从函数中调用
dimiourgia()
?看起来你忘了一个
代码中某个不在这里的地方。或者,如果你能告诉我错误的意思。它是“忘记a;”吗?main在哪里?您是否从函数中调用
dimiourgia()
?看起来你忘了一个
代码中不在这里的某个地方。或者,如果你能告诉我错误的意思。它是“忘记了a;”吗?正确答案是Baltasarq写的。在c/c++中,调用函数之前必须声明函数。正确答案是Baltasarq编写的答案。在c/c++中,在调用函数之前必须声明函数。