我试图在main中为不同程序(Q2-3和Q4)调用一个函数,但是在编译过程中出现错误。我的主要是
prog1(); [它说“以前的prog1隐式声明在这里”]
然后在最后有一个同名的函数
无效prog1()
{[它说“prog1的类型冲突”],是的,它只是在一行上说了{

[]只是我在此处键入的内容,而不是代码中的内容。如果您需要我的代码的更多部分,请告诉我。我的程序是用C而不是C++编写的

最佳答案

因为您没有提供prog1()的原型(prototype)。

例如,如果具有以下签名

char *prog1(void);

并且您不给出原型(prototype)而是从main()调用它,然后稍后使用上述签名定义它,隐式声明的原型(prototype)int prog1()与定义冲突。

只需在main()之前添加一个原型(prototype)。

关于c - C函数调用奇怪的错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32812987/

10-12 16:08