转载自:https://www.cnblogs.com/codingmengmeng/p/7220119.html
1.利用extern关键字,使用在后边定义的变量
1 #include<stdio.h> 2 3 int func(); 4 5 int main() 6 { 7 func(); //1 8 extern int num; 9 printf("%d",num); //2 10 return 0; 11 } 12 13 int num = 3; 14 15 int func() 16 { 17 printf("%d\n",num); 18 }
2.引用两一个文件中的变量 【条件:此变量必须是全局变量,如此例中的变量num】
main.c 1 #include<stdio.h> 2 3 int main() 4 { 5 extern int num; 6 printf("%d",num); 7 return 0; 8 } b.c 1 #include<stdio.h> 2 3 int num = 5; 4 5 void func() 6 { 7 printf("fun in a.c"); 8 }
注意: extern关键字只需要指明类型和变量名就行了,不能再重新赋值 [ extern int num=4;] 。
但是可以extern int num; num=1; 如果不想这个变量被修改可以使用const关键字进行修饰,extern const int num; 【const int num=5;】
3.引用另一个文件中的函数
main.c 1 #include<stdio.h> 2 3 int main() 4 { 5 extern void func(); 6 func(); 7 return 0; 8 } b.c 1 #include<stdio.h> 2 3 const int num=5; 4 void func() 5 { 6 printf("fun in a.c"); 7 }