链接目标文件,包括多余?
我正在尝试一下C。而且我认为我理解了这种联系业务。但我猜不是。我有一个简单的文件main.c:
#include "function.h"
int main(char args[])
{
int print = myfunction();
}
然后是第二对文件function.c / function.h
int myfunction(); //function.h
int myfunction() //function.c
{
return 5;
}
编译这个很棒。但是,无论我是否在主文件中使用#include "function.h"
,它都能很好地工作。为什么我需要包含function.h呢?
没有找到相关结果
已邀请:
5 个回复
渐首洽陈染
曝匿弄罚
或者,打开系统的等效选项。 大型程序总是以这种方式构建,因此编译器会检查参数类型。与动态和脚本语言不同,C生成实际的机器代码,并且不会在运行时检查参数计数或兼容性。 因此,函数原型被添加到基本语言中以在编译时进行类型检查。它们是可选的。
缔恃钨
徘廷
并返回类型
。不建议这样做。如果您打开编译器警告,您可能会收到有关使用未声明函数的警告。如果在编译main.c之前看到function.h,编译器可以捕获更多错误,因此它确切地知道
应该如何操作。
功飘