C语言 include 源文件

来源:互联网 发布:网络优化推广的宣传语 编辑:程序博客网 时间:2024/05/16 12:06

C语言会在包含的位置出展开头文件,当我们包含一个 源文件是 ,同样源文件也将会展开 ,而 C 语言的编译方式为分开编译成目标文件。。这样包含就会造成方法重定义的错误。



a.c


void a(){  printf(" a function ");}


b.c


#include "a.c"int main(){   printf("b.c");   return 0;}

在C  语言编译是实行 分开编译 即 a.c ,b.c各编译一次生成自己的目标文件 ,也就是有两个 ,b.c编译中,展开a.c,重新生成 a() 函数,两个目标文件有两个一样的函数。故出现错误 .


当我们在方法前加static时,表示为私有的 。a.c b.c 各有一个私有的 a() 函数 ,似有函数不会有冲突.

原创粉丝点击