【C++学习笔记】5、变量作用域
文章目录
- 【 1、局部变量 】
- 【 2、全局变量 】
- 【 3、局部变量和全局变量的初始化 】
- 作用域是程序的一个区域,一般来说有三个地方可以定义变量:
在函数或一个代码块内部声明的变量,称为局部变量。
在函数参数的定义中声明的变量,称为形式参数。
在所有函数外部声明的变量,称为全局变量。
【 1、局部变量 】
- 在函数或一个代码块内部声明的变量,称为局部变量。它们只能被函数内部或者代码块内部的语句使用。下面的实例使用了局部变量:
#include <iostream>
using namespace std;int main ()
{// 局部变量声明int a, b;int c;// 实际初始化a = 10;b = 20;c = a + b;cout << c;return 0;
}
【 2、全局变量 】
- 全局变量:在所有函数外部定义的变量(通常是在程序的头部)。
- 全局变量的值在程序的整个生命周期内都是有效的。
- 全局变量可以被任何函数访问。也就是说,全局变量一旦声明,在整个程序中都是可用的。
#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;
}
【 3、局部变量和全局变量的初始化 】
- 当局部变量被定义时,系统不会对其初始化,您必须自行对其初始化。
- 定义全局变量时,系统会自动初始化为下列值:
数据类型 | 初始化默认值 |
---|---|
int | 0 |
char | ‘\0’ |
float | 0 |
double | 0 |
pointer | NULL |
相关文章:

【C++学习笔记】5、变量作用域
文章目录 【 1、局部变量 】【 2、全局变量 】【 3、局部变量和全局变量的初始化 】 作用域是程序的一个区域,一般来说有三个地方可以定义变量: 在函数或一个代码块内部声明的变量,称为局部变量。 在函数参数的定义中声明的变量,称…...

Python中的装饰器
迷途小书童的 Note 读完需要 5分钟 速读仅需 2 分钟 装饰器是一个非常有用而又常被误解的功能,可以让我们在不修改函数或类的源代码情况下给它们提供扩展功能。本文将通过具体示例带你深入理解 Python 装饰器的用法。 1 装饰器基础 装饰器本质上是一个函数ÿ…...

什么是RESTful API,Spring MVC如何支持RESTful架构
文章目录 🎈个人主页:程序员 小侯 🎐CSDN新晋作者 🎉欢迎 👍点赞✍评论⭐收藏 ✨收录专栏:Java框架 ✨文章内容:Spring MVC支持RESTful架构 🤝希望作者的文章能对你有所帮助…...

cin、cin.getline()、getline()的用法【C++】
一、cin>> 用法1:输入一个数字或字符 #include <iostream> using namespace std; int main () {int a,b;cin>>a>>b;cout<<ab<<endl;return 0; } 用法2:接收一个字符串,遇“空格”、“TAB”、“回车”…...

单向链表(c/c++)
链表是一种常见的数据结构,其中运用到了结构体指针,链表可以实现动态存储分配,换而言之,链表是一个功能强大的数组,可以在某个节点定义多种数据类型,可以实现任意的添加,删除,插入节…...

像linux 一样清理Windows C盘
像 linux 有命令 du -sh 查看文件夹大小 但是windows 可就没有这个命令了,就算有命令,也不能扫描子目录里面的文件 但是windows 可以借助 软件来清理,和linux 一样 文件上面是目录,下面是文件所占用空间大小的图,咋…...
在Linux 下制作启动盘以及dd命令使用
在Linux 下制作启动盘以及dd命令使用 1、在Linux 下制作启动盘,可使用如下命令:2、Linux dd 命令(1)参数说明: 3、dd应用实例(1)将本地的/dev/hdb整盘备份到/dev/hdd(2)将/dev/hdb全盘数据备份到指定路径的image文件(3)将备份文件恢复到指定盘(4)备份/de…...

C语言插入排序
前言: 本文主要讲解插入排序中的直接插入排序和希尔排序。 1、直接插入排序: 1.1基本思想 直接插入排序是一种简单的插入排序法,其基本思想是把待排序的数值按照大小顺序逐个插入到一个已经排好序的有序序列中,直到将所有记录…...
SQL-DCL
DCL-管理用户 1.查询用户 USE mysql; SELECT * FROM user; 2.创建用户 CREATE USER “用户名”“主机名” IDENTIFIED BY "密码“; 3.修改用户密码 ALTER USER “用户名”“主机名” IDENTIFIED WITH mysql_native_password BY &quo…...

Elasticsearch 中的向量搜索:设计背后的基本原理
作者:ADRIEN GRAND 实现向量数据库有不同的方法,它们有不同的权衡。 在本博客中,你将详细了解如何将向量搜索集成到 Elastisearch 中以及我们所做的权衡。 你有兴趣了解 Elasticsearch 用于向量搜索的特性以及设计是什么样子吗? …...

Jquery会议室布局含门入口和投影位置调整,并自动截图
一、关于下载 1、文章中罗列了主要代码,如需使用,请前往CSDN下载进行下载,包中包含所有文件素材,开箱即用 2、下载链接:https://download.csdn.net/download/zlxls/88305636 二、有这么一个需求 1、会场进行布局&a…...
高精度乘法模板(fft)
正常高精度复杂度是o(n^2),fft复杂度o(nlogn) #define int long long//__int128 2^127-1(GCC) #define PII pair<int,int> #define f first #define s second using namespace std; const int inf 0x3f3f3f3f3f3f3f3f, N 3e5 5, mod 1e9 7; const doubl…...
C# 现状简单说明
文章目录 环境框架图形界面后端游戏 环境 .net framework 老版本.net版本,只能在windows环境下运行 .net core 新版.net版本。可以跨linux,mac平台运行 框架 图形界面 Winfrom 很老的图形界面。特点是丑,但是能用,学起来快 WPF 使用Xaml…...
el-table滚动加载、懒加载(自定义指令)
我们在实际工作中会遇到这样的问题: 应客户要求,某一个列表不允许分页。但是不分页的话,如果遇到大量的数据加载,不但后端响应速度变慢,前端的渲染效率也会降低,页面出现明显的卡顿。 那如何解决这个问题…...

不关闭Tamper Protection(篡改保护)下强制卸载Windows Defender和安全中心所有组件
个人博客: xzajyjs.cn 背景介绍 由于微软不再更新arm版本的win10系统,因此只能通过安装insider preview的镜像来使用。而能找到的win10 on arm最新版镜像在安装之后由于内核版本过期,无法打开Windows安全中心面板了,提示如下: 尝…...

从一到无穷大 #13 How does Lindorm TSDB solve the high cardinality problem?
本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。 文章目录 引言优势挑战系统架构细节/优化存储引擎索引写入查询 经验Ablation Study总结 引言 …...

三维模型OBJ格式轻量化的纹理压缩和质量关系分析
三维模型OBJ格式轻量化的纹理压缩和质量关系分析 三维模型的OBJ格式通常包含纹理信息,而对纹理进行轻量化压缩可以减小文件大小和提高加载性能。然而,在进行纹理压缩时需要权衡压缩比率和保持质量之间的关系,并根据具体应用场景选择合适的压缩…...

【每日一题】54. 螺旋矩阵
54. 螺旋矩阵 - 力扣(LeetCode) 给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。 示例 1: 输入:matrix [[1,2,3],[4,5,6],[7,8,9]] 输出:[1,2,3,6,9,8,7,4,5…...

git:一些撤销操作
参考自 如何撤销 Git 操作?[1] 一、撤销提交 git revert HEAD 撤销上次提交. (会在当前提交后面,新增一次提交,抵消掉上一次提交导致的所有变化,所有记录都会保留) 二、撤销某次merge git merge --abort 三、替换上一次提交 git commit --ame…...
leetcode 209. 长度最小的子数组
题目链接:leetcode 209 1.题目 给定一个含有 n 个正整数的数组和一个正整数 target 。 找出该数组中满足其总和大于等于 target 的长度最小的 连续子数组 [numsl, numsl1, …, numsr-1, numsr] ,并返回其长度。如果不存在符合条件的子数组,…...
AtCoder 第409场初级竞赛 A~E题解
A Conflict 【题目链接】 原题链接:A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串,只有在同时为 o 时输出 Yes 并结束程序,否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...

YSYX学习记录(八)
C语言,练习0: 先创建一个文件夹,我用的是物理机: 安装build-essential 练习1: 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件,随机修改或删除一部分,之后…...
Neo4j 集群管理:原理、技术与最佳实践深度解析
Neo4j 的集群技术是其企业级高可用性、可扩展性和容错能力的核心。通过深入分析官方文档,本文将系统阐述其集群管理的核心原理、关键技术、实用技巧和行业最佳实践。 Neo4j 的 Causal Clustering 架构提供了一个强大而灵活的基石,用于构建高可用、可扩展且一致的图数据库服务…...
【git】把本地更改提交远程新分支feature_g
创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...

IoT/HCIP实验-3/LiteOS操作系统内核实验(任务、内存、信号量、CMSIS..)
文章目录 概述HelloWorld 工程C/C配置编译器主配置Makefile脚本烧录器主配置运行结果程序调用栈 任务管理实验实验结果osal 系统适配层osal_task_create 其他实验实验源码内存管理实验互斥锁实验信号量实验 CMISIS接口实验还是得JlINKCMSIS 简介LiteOS->CMSIS任务间消息交互…...

安全突围:重塑内生安全体系:齐向东在2025年BCS大会的演讲
文章目录 前言第一部分:体系力量是突围之钥第一重困境是体系思想落地不畅。第二重困境是大小体系融合瓶颈。第三重困境是“小体系”运营梗阻。 第二部分:体系矛盾是突围之障一是数据孤岛的障碍。二是投入不足的障碍。三是新旧兼容难的障碍。 第三部分&am…...
Caliper 负载(Workload)详细解析
Caliper 负载(Workload)详细解析 负载(Workload)是 Caliper 性能测试的核心部分,它定义了测试期间要执行的具体合约调用行为和交易模式。下面我将全面深入地讲解负载的各个方面。 一、负载模块基本结构 一个典型的负载模块(如 workload.js)包含以下基本结构: use strict;/…...
Python常用模块:time、os、shutil与flask初探
一、Flask初探 & PyCharm终端配置 目的: 快速搭建小型Web服务器以提供数据。 工具: 第三方Web框架 Flask (需 pip install flask 安装)。 安装 Flask: 建议: 使用 PyCharm 内置的 Terminal (模拟命令行) 进行安装,避免频繁切换。 PyCharm Terminal 配置建议: 打开 Py…...
2.2.2 ASPICE的需求分析
ASPICE的需求分析是汽车软件开发过程中至关重要的一环,它涉及到对需求进行详细分析、验证和确认,以确保软件产品能够满足客户和用户的需求。在ASPICE中,需求分析的关键步骤包括: 需求细化:将从需求收集阶段获得的高层需…...

深入理解 C++ 左值右值、std::move 与函数重载中的参数传递
在 C 编程中,左值和右值的概念以及std::move的使用,常常让开发者感到困惑。特别是在函数重载场景下,如何合理利用这些特性来优化代码性能、确保语义正确,更是一个值得深入探讨的话题。 在开始之前,先提出几个问题&…...