C++青少年简明教程:C++中的常量、变量、表达式和语句

C++青少年简明教程:C++中的常量、变量、表达式和语句

C++编程中,常量、变量、表达式和语句是基本的编程概念。

常量(Constants):在程序中具有固定值的数据称为常量。常量可以是字面值,如整数、浮点数、字符或字符串,也可以是被定义为常量的标识符。常量在程序执行期间不会发生改变。

1.字面常量:字面常量是指直接出现在代码中的常量值。例如,整数常量10、浮点数常量3.14、字符常量'A'等都属于字面常量。字面常量的值在编译时就已经确定,并且不能被修改。

在C/C++中,字符常量是一个字符,字符常量属于整型数据类型,可以在程序中使用字符常量作为整型值参与计算或比较。由于字符是按照ASCII码表进行编码的,因此每个字符常量都对应一个整型值。例如,字符常量'A'对应的整型值是65,字符常量'a'对应的整型值是97。

注意字符常量和只含有一个字符的字符串的区别

例如,'A'和"A"的区别

'A'是一个字符常量,它表示一个单独的字符,例如'A'代表字符'A'。

"A"是一个字符串常量,由一串字符组成,其中包含一个空字符('\0')作为字符串的结束符,例如"A"代表字符串"A"。

2.符号常量:符号常量是通过标识符来表示的常量值,在程序中使用时要先进行定义。使用符号常量的好处是可以给常量起一个具有描述性的名字,方便理解和维护代码。在C++中,我们通常使用const关键字来定义符号常量。

使用const关键字定义常量:

const 类型 常量名 = 值;

例子:

const int MAX_VALUE = 100;

const double PI = 3.14159;

在上述代码中,MAX_VALUE和PI都被定义为常量,其值分别为100和3.14159。

变量(Variables):变量是用于存储和表示可更改值的内存位置。在程序中,我们可以为变量分配一个名称,并使用该名称来引用存储在其中的值。变量在其声明时被定义,并且可以根据需要修改其值。

C++ 中每个变量都必须有指定的类型。

变量的概念:

    • 变量就像一个盒子或容器,用来存放数据。
    • 每个盒子都有一个名字,可以通过这个名字找到它。
    • 例如,我们可以创建一个叫做"age"的盒子来存放人年龄。

例如:

int age;  // 创建一个整数型的变量,名字是age

age = 10;  // age赋值10,这里的“=”是赋值运算符

上边两句也可写为:int age =10; //age是一个整数类型的变量,其值为10

使用变量时注意以下几个方面:

变量的命名应该具有可读性和描述性。

变量需要初始化,即在使用变量之前,需要对其进行赋值。

变量的作用域也需要注意,在不同的代码块中,变量可能会出现重名,因此需要在使用时注意区分。

计算长方形的面积

#include <iostream>
using namespace std;int main() {int a = 10; // 变量  int b = 5; // 变量  cout << "长方形的面积是:" << a * b << endl;return 0;
}

表达式(Expressions):表达式是由常量、变量、运算符和函数调用组成的组合,它们在执行时产生一个结果。例如,x + y是一个表达式,其中x和y是变量,+是一个运算符。表达式可以用于计算新的值,赋值给变量,作为判断条件等。

表达式(Expression)是一些数学式子或算术问题。

运算符(Operator)指对常量或变量进行运算或处理的符号。参与运算的数值或变量称为操作数(Operand)。C++有多种运算符,后面讲解。

语句(Statements):语句是执行特定操作的单一指令或命令。C++程序由一系列语句组成。常见的语句包括赋值语句、条件语句(如if-else语句)、循环语句(如for循环和while循环)以及函数调用语句等。

表达式和语句的区别

表达式会返回一个值作为其结果,而语句通常不会返回一个特定的值。表达式的结果可以被赋值给变量,进而被当作语句使用。语句可以包含表达式,比如if语句中的条件表达式和循环语句中的循环条件表达式。

语句一般需要以分号结束,示例:

int x = 5; // 变量声明和初始化语句

cout << "Hello, world!"; // 输出语句

x++; // 表达式语句,对变量进行自增操作

for (int i = 0; i < 5; i++) { // 循环语句

    cout << i;

}

需要注意的是,有一些特殊情况下不需要分号:

在类定义中的成员函数定义,函数体不需要分号;

在命名空间定义中,命名空间体也不需要分号;

在枚举类型定义中,如果最后一个枚举常量后面跟着花括号,则不需要分号;

某些预处理器的指令(如 #define、#include 等),在其内容后面是不需要分号的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/9697.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【挑战30天首通《谷粒商城》】-【第一天】【10 番外篇】 解决docker 仓库无法访问 + MobaXterm连接VirtualBox虚拟机

文章目录 课程介绍 1、解决docker 仓库无法访问 2、 MobaXterm连接VirtualBox虚拟机 Stage 1&#xff1a;下载MobaXterm选择适合你的版本 Stage 2&#xff1a;vagrant ssh 连接&#xff0c;开启ssh访问 Stage 2-1&#xff1a;su获取root账号权限,输入密码&#xff08;默认vagra…

【Web】CTFSHOW 七夕杯 题解

目录 web签到 easy_calc easy_cmd web签到 CTF中字符长度限制下的命令执行 rce(7字符5字符4字符)汇总_ctf中字符长度限制下的命令执行 5个字符-CSDN博客7长度限制直接梭了 也可以打临时文件RCE import requestsurl "http://4ae13f1e-8e42-4afa-a6a6-1076acd08211.c…

C++ Builder XE EnumWindowsProc遍历所有窗口的名称

BOOL CALLBACK EnumWindowsProc(HWND hwnd, LPARAM lParam) { // 这里可以添加你的处理逻辑 // 例如&#xff0c;将句柄添加到列表中或者其他操作 // 这里我们仅仅输出到调试窗口 OutputDebugString(L"枚举窗口句柄: "); char windowHandle[10];…

ICode国际青少年编程竞赛- Python-4级训练场-while语句入门

ICode国际青少年编程竞赛- Python-4级训练场-while语句入门 1、 while Flyer.disappear():wait() Dev.step(2)2、 Dev.step(1) while Flyer.disappear():wait() Dev.step(5)3、 while Flyer[0].disappear():wait() Dev.step(3) Dev.step(-1) while Flyer[0].disappear():…

准实时数仓搭建指南:以仓储式会员商超为模拟场景

在电商和新零售持续冲击传统零售商超的今天&#xff0c;仓储式会员店反而成功逃脱曾经的“水土不服”预测&#xff0c;业绩一路向好。与此同时&#xff0c;随着人工智能、大数据、智慧物流等技术的不断革新&#xff0c;零售批发的消费场景也进一步拓展&#xff0c;对数据分析的…

RERCS系统-WDA+BOPF框架实战例子 PART 1-新建List UIBB(列表组件)并分配Feeder Class和Node Element

需求背景&#xff1a; 已有的项目主数据功能&#xff0c;新增一个列表UIBB显示主数据额外的关联数据明细。 1、Fiori页面通过右键-技术帮助打开对应的组件配置&#xff1b; 2、双击对应的组件配置&#xff0c;调整对应的页面新建UIBB&#xff1b; 3、填写对应的UIBB属性字段&a…

doris 启动be报错

doris版本是1.2.4 java版本是&#xff1a;1.8 刚开始我以为是版本不兼容问题&#xff0c;后面发现思路错了&#xff0c;版本是兼容的&#xff0c;报以下错我的原因是操作系统没有达到安装要求 以下是博主在部署doris x64(avx2)版本中遇到的小bug 在大家使用doris的时候应该…

OpenNJet,够轻更强云原生应用引擎

前言&#xff1a; 在正式介绍OpenNJet之前&#xff0c;我们先来看看它的技术架构&#xff0c;如下图所示&#xff0c;OpenNJet正是NGINX的Pro版&#xff0c;在100%兼容NGINX基础上&#xff0c;新增了动态配置加载、主动式健康检测、集群高可用、声明式API等多种强大功能。 NGIN…

2024.05.10作业

TCP服务器 头文件 #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QTcpServer> #include <QTcpSocket> #include <QList> #include <QMessageBox> #include <QDebug>QT_BEGIN_NAMESPACE namespace Ui { class Widget; …

【神器来袭】快速解放双手,朋友圈自动转发工具,告别繁琐操作!

朋友圈作为一个重要的营销推广渠道&#xff0c;如果能实现自动转发&#xff0c;那对于很多企业或个人来说&#xff0c;是极好的。下面&#xff0c;就给大家分享一个实用且便捷的朋友圈运营工具——个微管理系统&#xff0c;让大家都能快速推广。 1、多账号登录&#xff0c;定时…

适用于 macOS 的最佳独立 HBO Max 客户端

适用于 macOS 的最佳独立 HBO Max 应用程序。不再在浏览器选项卡之间切换。只需直接从 Dock 启动 Clicker for HBO Max 即可开始狂欢。 HBO Max 客户端 Clicker for HBO Max 下载 Clicker for HBO Max mac版安装教程 软件下载完成后&#xff0c;双击pkg根据提示进行安装 Clic…

ssh远程免密登录

ssh远程连接分为五个阶段 版本号协商阶段密钥和算法协商阶段认证阶段会话请求阶段交互会话阶段 而上图的SessionKey即是在阶段2&#xff1a;密钥和算法协商阶段&#xff0c;服务器端和客户端利用DH交换&#xff08;Diffie-Hellman Exchange&#xff09;算法、主机密钥对等参数…

编译适配纯鸿蒙系统的ijkplayer中的ffmpeg库

目前bilibili官方的ijkplayer播放器&#xff0c;是只适配Android和IOS系统的。而华为接下来即将发布纯harmony系统&#xff0c;是否有基于harmony系统的ijkplayer可以使用呢&#xff1f; 鸿蒙版ijkplayer播放器是哪个&#xff0c;如何使用&#xff0c;这个问题&#xff0c;大家…

暴力法解决最近对问题和凸包问题-实现可视化

目录 最近对问题 凸包问题 最近对问题 顾名思义就是采用蛮力法求出所有点之间的距离&#xff0c;然后进行比较找出第一个最近对&#xff0c;一个一个进行比较。 大概思路就是如图&#xff08;每个圈代表一个数对&#xff09; 第一个和其他四个比较 第二个和其他三个比较 …

新版文件同步工具(Python编写,其中同时加入了多进程计算MD5、多线程复制大文件、多协程复制小文件、彩色输出消息、日志功能)

两个月前&#xff0c;接到一个粉丝的要求&#xff0c;说希望在我之前编写的一个python编写的文件同步脚本(Python编写的简易文件同步工具(已解决大文件同步时内存溢出问题)https://blog.csdn.net/donglxd/article/details/131225175)上加入多线程复制文件的功能&#xff0c;前段…

英语学习笔记8——What‘s your job?

What’s your job? 你是做什么工作的&#xff1f; 词汇 Vocabulary policeman 男警察 policewoman 女警察 police n. 警力 集合名词&#xff0c;永表复数 西方国家警察管的事很多。交警&#xff0c;刑警&#xff0c;武警一般不分开。 taxi driver 出租车司机 taxi / cab n.…

空间复杂度

前言 通过上一节的学习&#xff0c;我们知道了衡量一个算法是否高效的标准就是复杂度&#xff0c;我们已经学习了时间复杂度&#xff0c;那么本节我们就了解一下空间复杂度的相关知识&#xff0c;那么我们废话不多说&#xff0c;正式进入今天的学习 空间复杂度 空间复杂度也是…

python爬虫(三)之虎嗅网汽车文章爬虫

python爬虫&#xff08;三&#xff09;之虎嗅网汽车文章爬虫 闲来没事&#xff0c;闲鱼上有个好兄弟要我从虎嗅网上抓一些汽车文章的爬虫&#xff0c;于是大力出奇迹&#xff0c;我写了一个python程序&#xff0c;将这个网站上所有的汽车文章全部抓取下来了&#xff0c;存储到…

若依生成代码的步骤

1.创建表&#xff0c;要有注释 2.导入表 3.创建主菜单 4.修改表 5.生成代码 6.把代码复制到自己的程序中&#xff1a;复制表、后端、前端 7.重启后端&#xff0c;如果有问题则clean 8.回到浏览器可以看到正常显示了生成的页面

JAVA获取application.yml配置文件的属性值

application.yml配置参数 方式一&#xff1a;使用Value方式(常用) 语法 Value("${配置文件中的key:默认值}") Value("${配置文件中的key}")方法1&#xff1a;使用的类文件中定义变量&#xff0c;直接使用变量 import org.springframework.beans.factory.an…