链接属性external的使用


//demo1.c
#include<stdio.h> 
int x = 10; 
//static int x = 10; 
void print(void) 
//static void print(void) 
{ 
printf("Hello World!
"); 
}


//demo2.c
#include<stdio.h> extern int x; int main(void) { //int x; printf("%d ",x); print(); return 0; }




gcc demo1.c  demo2.c
./a.out

  

demo2可以调用demo1。

若将demo2中的extern去掉,则打印的x是随机值。并不是demo1中的,不是全局变量。

在编写单片机驱动时,比如文件1中采集到了V=ADC的值。在另一个文件中调用V就要用external V

原文地址:https://www.cnblogs.com/myohao/p/8419432.html