错误C2143:语法错误:在'*'之前缺少')'

时间:2011-03-26 16:56:17

标签: c prototype struct typedef header-files

我有以下头文件,但继续获取:语法错误:缺少')'之前'*' 在原型申报行上。有什么问题?

typedef struct queue{
int count;
int first;
int last;
int *q;
};

void init_queue(queue *q);
void enqueue(queue *q, int x);
int dequeue(queue *q);
int empty(queue *q);

1 个答案:

答案 0 :(得分:7)

你从未完成过你的typedef。你可能打算这样做:

typedef struct queue{
int count;
int first;
int last;
int *q;
} queue;

您需要在typedef的末尾为您的类型定义别名。如果您没有typedef,则必须编写原型:

void init_queue(struct queue *q);
// etc.