问答详情
源自:4-1 [Linux C语言] 多个源文件分而治之

为什么报错了呢?我的VIM版本是最新的

tuolei717@ubuntu:~/gaoxiang/Les2$ gcc max.c hello.c -o main.out
hello.c: In function ‘main’:
hello.c:5:13: warning: implicit declaration of function ‘max’ [-Wimplicit-function-declaration]
  int maxNum=max(a1,a2);

提问者:黑丶雨 2016-06-07 16:27

个回答

  • 小雾3378873
    2016-06-21 19:37:06

    这节课的视频你看到完了吗,最开始我也和你的情况一样,但看完这节课的视频后,这个问题就解决了。

    这个错误是:调用主函数后,在int maxNum=max(a1,a2)出的错,因为在hello.c这个源文件中没有对max()函数声明,导致主函数运行到这里不知道他是谁,所以应该在主函数调用前加一个:#include "max.c"    对这个文件专用。

    保存退出后,只需要编译hello.c一个源文件就行了(gcc hello.c),max.c那个就不用编译,如果两个同时编译,又要出错了。

    编译完后,会生成a.out可执行文件,然后运行它就OK了。

  • Ralph123
    2016-06-08 19:05:41

    没有应用函数就会报个worning ,你可以在引用库下面加一个#include"max.c"声明就可以了