两种可能,在同一个文件内,表示数组RxBuffer1[200]在别的地方已经被定义了,这里的是引用。举个例子
#include
void fun(){
extern unsigned char RxBuffer1[200];
}
unsigned char RxBuffer1[200];
这里之所以要用extern来引用,是因为c语言的运算方式是从上到下。如果你的全局变量定义在需要使用的下面的时候,就需要用extern来引用了。反之则不用,例如
#include
int a;
void fun(){
a = 2;
}
第二种可能,不在同一个文件内。当你在a.c文件里定义了一个unsigned char类型的长度为200的名字叫RxBuffer1的数组后,需要在b.c文件里使用,那么你就需要在b.c中使用这段话来声明,这个数组变量是引用的。
extern unsigned char RxBuffer1[200];
在另外一个编译单元里定义了一个长度为200的字符数组,在这里只是声明
扩展作用范围