【C++】局部变量和全局变量

简介: 有关C++局部变量和全局变量的记录

写在前面

大家好,我是翼同学。今天文章的内容是:

  • 局部变量和全局变量

image.png

内容

局部变量

在函数内部或一个代码块内部声明的变量,称为局部变量。

注:使用{ }括起来的一段代码可称为代码块。

对局部变量的一些说明:

  • 主函数无法使用其他函数中定义的局部变量。同理其他函数也无法使用主函数中的变量
  • 不同的函数可使用同名的局部变量,它们互不干扰。
  • 函数的形参也是局部变量。
  • 局部变量只在函数调用时存在,一旦调用结束,局部变量就被销毁。

全局变量

在所有函数外部定义的变量(通常是在程序的头部),称为全局变量。

注:全局变量的有效范围从定义变量的位置开始到本源文件结束,在程序的全部执行过程中都占用存储单元,而不是仅在需要时才开辟单元。

对全局变量的一些说明:

  • 全局变量可以被所有定义在全局变量之后的函数访问。
  • 在同一个源文件中,如果全局变量和局部变量同名,则在局部变量的作用范围内,全局变量被屏蔽,即不起作用。
  • 全局变量不宜过多,应限制使用,因为过多会使各个含有全局变量的函数在执行时可能改变其值,程序容易出错。而能修改全局变量的语句又很多,这使调试程序变得困难。

image.png

image.png

初始化

定义全局变量时如果不初始化,系统会自动为其初始化为下列值:

image.png

但注意,定义局部变量时未初始化,系统不会对其初始化,其也会被随机分配一个值。

写在最后

好了,文章的内容就到这里,感谢观看。

目录
相关文章
|
7月前
|
存储
C++-静态局部变量
C++-静态局部变量
|
2月前
|
存储 缓存 安全
【C/C++ 关键字 存储类说明符 】 线程局部变量的魔法:C++ 中 thread_local的用法
【C/C++ 关键字 存储类说明符 】 线程局部变量的魔法:C++ 中 thread_local的用法
36 0
|
8月前
|
C++
39.【C/C++ 全局变量和局部变量 (详解)】
39.【C/C++ 全局变量和局部变量 (详解)】
56 0
|
C++ 索引
C++ 在函数中使用静态局部变量,让函数返回数组
C++ 在函数中使用静态局部变量,让函数返回数组
217 0
C++ 在函数中使用静态局部变量,让函数返回数组
C/C++中static局部变量的注意事项
C/C++中static局部变量的注意事项
183 0
|
C++
C/C++ 全局变量和局部变量的大小限制
局部数组变量和全局数组变量的大小限制
2835 0
|
存储 C++ 编译器
C|C++中的静态全局变量,静态局部变量,全局变量,局部变量的区别
static 有两种用法:面向过程程序设计中的static 和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明 static 在类中的作用。    一、面向过程设计中的static    全局变量、局部变量、静态全局变量、静态局部变量的区别   C++变量根据定义的位置的不同的生命周期,具有不同的作用域,作用域可分为 6种:全局作用域,局部作用域,语句作用域,类作用域,命名空间作用域和文件作用域。
1896 0
|
5天前
|
设计模式 安全 算法
【C++入门到精通】特殊类的设计 | 单例模式 [ C++入门 ]
【C++入门到精通】特殊类的设计 | 单例模式 [ C++入门 ]
16 0
|
6天前
|
C语言 C++
【C++】string类(常用接口)
【C++】string类(常用接口)
15 1