C语言中提示参数类型冲突一般怎么解决

int mainloop(struct StuHead *pstStuList,
             struct TeaHead *pstTeaList,
             struct Admin *pstAdmin)
             
             /*提示struct StuHead *,
                 struct TeaHead *,
                 struct Admin *这三个参数conflicting types for ‘mainloop’*/
阅读 5.8k
3 个回答

你在函数使用前忘记声明或者之前的声明和后面你改动的不同。

如果你没有声明那就声明;如果声明和定义不同,那就改成相同的。

int main() {
  // 声明
  int mainloop(
    struct StuHead *pstStuList, 
    struct TeaHead *pstTeaList,
    struct Admin *pstAdmin);


  // 调用
  mainloop(...);
}

// 定义
int mainloop(
  struct StuHead *pstStuList,
  struct TeaHead *pstTeaList,
  struct Admin *pstAdmin)
{
 /* 函数的具体内容 */
}

试试在定义/调用这个函数前定义/声明这几个结构体,这个有点像没有声明函数就调用函数的报错。

新手上路,请多包涵

123456789

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题