OK,国际惯例,先是思维导图
一、局部变量
#includeint main() { printf("hehen"); int a = 100; printf("a=%dn", a); return 0; }
作用域:局部变量的作用域是局部范围(就是大括号之内)
#includeint main() { printf("hehen"); { int a = 100; } printf("a=%dn", a); return 0; }
若是改为这样,就会导致a无法输出,因为超出了作用域
生命周期:相应的,生命周期就是这个大括号
二、全局变量
#includeint main() int g_val = 100; { printf("1:%dn", g_val); { printf("2:%dn", g_val); } printf("3:%dn", g_val); return 0; }
作用域:输出会是这样的:
可以看到,在执行结果中,有三个输出,所以说明,全局变量在整个代码中都有作用,当然,想让其在整个工程中有定义,那么需要输入声明,代码为:
extern int g_val
生命周期:main函数的生命周期就是其声明周期,即全程序,加上声明可扩展到全工程
三、注意:全局函数不要用同一个函数名称,否则会重定义!
相关代码我会放在码云上,欢迎学习与交流:C语言学习之路: C语言学习当中做的相关代码 - Gitee.com



