c - C编译错误中的队列实现

标签 c struct queue compilation

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

expected ‘)’ before ‘*’ token >>in error_line

///USEFUL PART OF THE PROGRAM
//queue struct
typedef struct{
    int embros,piso,adeia;
    int pinakas[PLITHOS];
}Q;

int main(){
    Q oura_apo; //define a new queue

    dimiourgia(&oura_apo);//create the new queue

return 0;
}

//this function creates a new empty list

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

最佳答案

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

void dimiourgia(Q *oura);

您的程序中可能发生错误的位置不是很清楚,但是,通常在无法识别结构 Q 时会收到该错误消息。

关于c - C编译错误中的队列实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5158038/

相关文章:

c - 如何确定双向链表成为比简单链表更好的解决方案的点?

c - 未定义对 'gnutls_...' 函数的引用

c - 如何在 C 中使用 strcat 连接 short 和 char 数组

c# - 使用 pinvoke 将结构数组中的嵌入式 C 结构数组传递给 C#

c - 如何键入结构内部的 3 位变量?

c - 在C中实现队列

java - 在 RabbitMq 中插入记录时防止重复

c - C 程序中的数据类型规范 ASCII、ISO-8859、UTF-8 Unicode

c - 结构中 ‘:’ 标记之前出现错误 : expected ‘,’ , ‘;’、 ‘}’、 ‘__attribute__’ 或 ‘=’

c++ - Queue.empty() 为 false,但队列大小为 0