繁体   English   中英

C 中函数结构错误的类型冲突

[英]conflicting types for Function’ struct error in C

我目前正在尝试使用头文件将结构传递给不同的文件。 它还给了我警告“在参数列表中声明的结构连接”。 三是三个文件,piggy1.h、piggg1.c和ear.c。 关于为什么我无法编译此代码的任何想法? 非常感谢你们!

//piggy1.h----------------------------------------
void ear(struct Connection *connect1);

//-------------------------------------------------*
//ear.c --------------------------------------------
include "piggy1.h"

void ear(struct Connection *connect1){}

//---------------------------------------------------*
//piggy1.c -------------------------------------------

include "piggy1.h"


struct Connection{
int llport;
int rrport;
char rraddr[50];
int noleft;
int noright;
};

 main(argc, argv)

int argc;
char *argv[];
{
int cases;
int noright = -1;
int noleft = -1;
int rraddr = -1;
int llport = -1;
int rrport = -1;
struct Connection connect;
}

我将结构定义到头文件中,这解决了问题! 将以下代码放入头文件中。

struct Connection{

   int llport;
   int rrport;
   char rraddr[50];
   int noleft;
   int noright;
};

冲突错误意味着在您的定义部分中传递的参数与在您的声明部分中传递的参数不匹配。

在您的情况下,显示错误是因为在结构定义之前完成了 ear 函数的定义和声明。

编译器无法识别您的参数,因此会引发错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM