关于局部变量与全局变量的区别
局部变量是定义在大括号内部的,只能在大括号内部使用,而全局变量是定义在主函数之前,在整个主函数范围内都能使用。当全局变量与局部变量同名的时候,局部变量优先使用。话不多说,直接上代码。
变量作用域与生命周期
局部变量的作用域是变量所在的局部范围,全局变量的作用域是整个工程。
局部变量的生命周期是:进入作用域生命周期开始,出作用域生命周期结束。
全局变量的生命周期是:整个程序的生命周期。
补充
作用域与生命周期是两个完全不同的概念。作用域是一个静态概念,旨在编译源程序的时候用到。一个标识符的作用域指在源文件中该标识符能够独立的合法出现的区域,生命周期则是一个程序运行时的概念,它指的是变量在整个程序中载入到结束运行的过程中存在的时间周期。函数和数据类型是静态的概念,所以没有生命周期的说法,它们从编译、程序的运行到结束是一直存在的。
全局变量的作用域为当前项目,若要调用其他文件中的变量可以利用extern进行声明,让编译器知道改变量已被定义,防止产生bug
常量
常量在c语言中大致分为一下几种:
- 字面常量
- const修饰的常变量
- #define定义的标识符常量
- 枚举常量
- 由于才接触c语言和博客,写的肯定有不足之处,希望各位老铁能帮忙指出错误,酸q啦。