c语言中全局变量的设置方式
作者:老光私享
这篇文章主要介绍了c语言中全局变量的设置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
c语言中全局变量的设置
在 C 语言中,如果你想设置一个全局变量,你需要在程序的某个地方使用关键字 extern
来声明这个变量。
- 例如:
extern int global_variable;
这样,你就声明了一个名为 global_variable
的全局变量。但是,这样声明的变量是没有赋值的,所以它的初始值是不确定的。
如果你想为这个全局变量赋值,你需要在程序的某个地方使用一个变量定义来定义这个变量。
- 例如:
int global_variable= 10;
这样,你就定义了一个名为 global_variable
的全局变量,并且为它赋值为 10。
在 C 语言中,全局变量的作用域是整个程序,它可以在程序的任何地方使用。但是,由于它在整个程序中都可以被访问,所以在使用全局变量时要格外小心,避免引起不必要的麻烦。
c语言全局变量使用编程技巧
在C语言中,不可避免的需要使用全局变量,记录下全局变量的使用注意事项,或者说技巧,供参考。
示例说明
注意项:全局变量注意不要重复使用,特别是全局数组
如在test1.c中定义一个全局数组
//test1.c uint8_t test_buffer[1024]; void test1_modify_buffer() { test_buffer[0] = 0x5a; }
在test2.c中使用extern调用的话,则需要考虑是否该数组会被重复使用
//test2.c extern uint8_t test_buffer[1024]; void test2_modify_buffer() { test_buffer[0] = 0x12; test1_modify_buffer(); }
那在test2.c中的test2_modify_buffer()函数运行完之后,全局变量数组test_buffer[0]就变成了0x5a。所以要注意要检查全局变量的使用逻辑。
注意
在全局变量的使用过程中要注意重复使用的逻辑问题,否则容易出现问题。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。