C++ 错误:‘;的类型冲突;recdisp’;void recdisp(结构节点*p)
在main之前声明函数 解决方案 结构声明应该在函数声明之前 如果先声明函数会发生什么情况 由于没有声明结构,因此假定与函数关联的参数是某个东西。C++ 错误:‘;的类型冲突;recdisp’;void recdisp(结构节点*p),c++,c,gcc,C++,C,Gcc,在main之前声明函数 解决方案 结构声明应该在函数声明之前 如果先声明函数会发生什么情况 由于没有声明结构,因此假定与函数关联的参数是某个东西。 稍后在声明了结构并定义了函数之后,编译器现在使用结构来关联函数,但它之前已经使用其他关联完成了此过程,因此需要重新声明,您使用哪个版本的GCC?我使用了(GCC)9.2.1 20190827,代码编译成功。在使用它的函数原型之前,您需要声明struct node(例如,将第一行下移一点)OT:您需要缩进代码。 void recdisp(struct
稍后在声明了结构并定义了函数之后,编译器现在使用结构来关联函数,但它之前已经使用其他关联完成了此过程,因此需要重新声明,您使用哪个版本的GCC?我使用了(GCC)9.2.1 20190827,代码编译成功。在使用它的函数原型之前,您需要声明
struct node
(例如,将第一行下移一点)OT:您需要缩进代码。
void recdisp(struct node* p);
struct node{
int data;
struct node* link;
};
struct node* head;
int main()
{
recdisp(head);
return 0;
}
void recdisp(struct node* p)
{
if(p==NULL)
return;
recdisp(p->link);
printf("%d ",p->data);
}