永发信息网

我编译文件3包含了文件1和2,而文件1又用到文件2的函数,我把文件1放在前面,为什么也可以编译连接执行?

答案:2  悬赏:0  手机版
解决时间 2021-02-10 09:39
  • 提问者网友:两耳就是菩提
  • 2021-02-09 09:30
文件1中也没声明文件2的函数,也没有包含。我用的是visual C++ 6.0

编译时出现以下提示
:\cc\第八章\c8习_1\c8习_1\c8习_1\c8习_1_2.c(4) : warning C4013: 'max' undefined; assuming extern returning int
验证6.obj - 0 error(s), 0 warning(s)
但是还是能执行
为什么?
'max' undefined; assuming extern returning int,这个是未定义max,系统自动转换为整形,但是这个文件1到底执行max没有?搞不太懂?
最佳答案
  • 五星知识达人网友:長槍戰八方
  • 2021-02-09 10:44
要把文件2放在前面
警告的意思是max没有定义,max是定义在文件2中的么?
全部回答
  • 1楼网友:渊鱼
  • 2021-02-09 10:51
我觉得是这样吧,就是main.c中引用的只是a.h中头文件的声明函数,但是并没有引用到a.c中具体的函数实现,好久不用了,大概觉得应该是这样吧,希望对你有帮助
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯