当前位置: 首页 > news >正文

开心档之开发入门网-C++ 变量作用域

C++ 变量作用域

目录

C++ 变量作用域

局部变量

实例

全局变量

实例

实例

初始化局部变量和全局变量



作用域是程序的一个区域,一般来说有三个地方可以定义变量:

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

  • 在函数参数的定义中声明的变量,称为形式参数。

  • 在所有函数外部声明的变量,称为全局变量。

我们将在后续的章节中学习什么是函数和参数。本章我们先来讲解什么是局部变量和全局变量。

局部变量

在函数或一个代码块内部声明的变量,称为局部变量。它们只能被函数内部或者代码块内部的语句使用。下面的实例使用了局部变量:

实例

#include <iostream>
using namespace std;int main ()
{// 局部变量声明int a, b;int c;// 实际初始化a = 10;b = 20;c = a + b;cout << c;return 0;
}

全局变量

在所有函数外部定义的变量(通常是在程序的头部),称为全局变量。全局变量的值在程序的整个生命周期内都是有效的。

全局变量可以被任何函数访问。也就是说,全局变量一旦声明,在整个程序中都是可用的。下面的实例使用了全局变量和局部变量:

实例

#include <iostream>
using namespace std;// 全局变量声明
int g;int main ()
{// 局部变量声明int a, b;// 实际初始化a = 10;b = 20;g = a + b;cout << g;return 0;
}

在程序中,局部变量和全局变量的名称可以相同,但是在函数内,局部变量的值会覆盖全局变量的值。下面是一个实例:

实例

#include <iostream>
using namespace std;// 全局变量声明
int g = 20;int main ()
{// 局部变量声明int g = 10;cout << g;return 0;
}

当上面的代码被编译和执行时,它会产生下列结果:


10

初始化局部变量和全局变量

当局部变量被定义时,系统不会对其初始化,您必须自行对其初始化。定义全局变量时,系统会自动初始化为下列值:

数据类型初始化默认值
int0
char'\0'
float0
double0
pointerNULL

正确地初始化变量是一个良好的编程习惯,否则有时候程序可能会产生意想不到的结果。

http://www.lryc.cn/news/56062.html

相关文章:

  • 蓝易云:linux怎么关闭防火墙详细教程
  • 操作系统-用户进程
  • 小驰私房菜_07_camx EIS使能
  • 互联网快速发展,孕育着新技术、新模式的全新时代正在到来
  • 【VUE】1、安装node.js
  • 一文弄懂window.print()打印
  • 卷麻了,00后测试用例写的比我还好,简直无地自容.....
  • mysql性能优化之explain分析执行计划
  • IDEA修改关键字和注释颜色
  • 数据库总结/个人总结
  • 【Maven】开发自己的starter依赖
  • JVM与Java体系
  • 【C++笔试强训】第十二天
  • C# | 使用DataGridView展示JSON数组
  • Python入门到高级【第四章】
  • 【ChatGPT】ChatGPT 能否取代程序员?
  • 英飞凌Tricore问题排查01_Det/Reset/Trap排查宝典
  • 第六章 共享模型之 无锁
  • 2023Q2押题,华为OD机试用Python实现 -【机智的外卖员】
  • 【华为OD机试真题】密室逃生游戏(javapython)
  • [golang gin框架] 17.Gin 商城项目-商品分类模块, 商品类型模块,商品类型属性模块功能操作
  • Redis安装-使用包管理安装Redis
  • HTML属性的概念和使用
  • ChatGPT基础知识系列之一文说透ChatGPT
  • ‘go install‘ requires a version when current directory is not in a module
  • 蓝桥杯嵌入式第十三届(第二套客观题)
  • FFmpeg进阶:各种输入输出设备
  • 使用Shell笔记总结
  • 反常积分的审敛法
  • python实战应用讲解-【numpy专题篇】numpy常见函数使用示例(十三)(附python示例代码)