常见的全局变量使用形式
#include <stdio.h> int a=15,b=-7; //定义全局变量a,b int max(int,int); int main( ) { printf("%d\n", max(a,b)); return 0; } int max(int x,int y) { int z; z=x>y?x:y; return z; }
用extern拓展一个文件内的全局变量的作用范围
#include <stdio.h> int max(int,int); int main( ) { extern int a,b; //对全局变量a,b作提前引用声明 printf("%d\n", max(a,b)); return 0; } int a=15,b=-7; //定义全局变量a,b int max(int x,int y) { int z; z=x>y?x:y; return z; }
用extern声明其他文件中定义的外部变量
max.c
int a=15,b=-7; int max(int x,int y) { int z; z=x>y?x:y; return z; }
main.c
#include <stdio.h> extern int a,b; int max(int,int); int main() { printf("%d\n", max(a,b)); return 0; }
用static声明静态全局变量:限制本文件外使用
max.c
static int a=15,b=-7; int max(int x,int y) { int z; z=x>y?x:y; return z; }
main.c
#include <stdio.h> int a=100,b=10; int max(int,int); int main() { printf("%d\n", max(a,b)); return 0; }