extern和头文件在多文件编译过程中的作用

来源:互联网 发布:mac收藏页面快捷键 编辑:程序博客网 时间:2024/05/22 03:17
    多文件编译中,extern(外来的)是连接这些文件的关键。只要多个文件处于一个工程中(vs),或者使用gcc一起编译(linux,如gccfile1.c file2.c -otest),extern可以将本文件中定义的变量或者函数的作用域至其他文件,当然这些变量和函数必须是全局的。
   至于头文件,其作用是把用extern声明的来自外部的变量和函数包含到本文件中。例子如下:
  
编译:  gcc file1.c file2.c file1.h -o file
  
file1.c:
  
int a=9;
  
void add(int i,int j){.....}

 
  file1.h:
  
extern a;   (不允许省略extern)
  
extern void add(int i,int j);  (允许省略extern)

  
file2.c:
  
#include 'file1.h'
 
   void main()
 
  {
 
       add(a,1);
 
  }
0 0
原创粉丝点击