将extern用于全局变量的正确方法是在变量的定义和声明中使用extern关键字。这样做可以告诉编译器,这个变量在其他源文件中定义,而不是在当前源文件中。这种方法可以在多个源文件之间共享全局变量,并避免重复定义错误。
以下是一个简单的示例:
在一个源文件(例如:main.c)中定义全局变量:
#include<stdio.h>
int global_var = 10;
int main() {
printf("Global variable: %d\n", global_var);
return 0;
}
在另一个源文件(例如:other.c)中使用extern关键字声明全局变量:
#include<stdio.h>
extern int global_var;
void print_global_var() {
printf("Global variable in other.c: %d\n", global_var);
}
然后在主函数中调用print_global_var()函数:
#include "other.c"
int main() {
printf("Global variable: %d\n", global_var);
print_global_var();
return 0;
}
这样,您就可以在多个源文件中使用同一个全局变量,而不会导致重复定义错误。
领取专属 10元无门槛券
手把手带您无忧上云