首页 > 技术文章 > DataWhale&交大ACM_C++语法基础

most-silence 2022-04-14 10:28 原文

变量

计算机的内存

变量指的是会随着程序运算而改变的量。 Tips: 比如用户在售卖机购买的可乐数量和爆米花数量都是不确定的,最后的总价也会各异,所以这些数量和总价都以变量的形式存在于计算机中。维护这些变量会用到计算机的存储功能

  • 计算机的存储功能会使用内存实现。
  • 计算机中的操作系统一般会把内存划分成不同区域来存储数据,以便于管理。
  • 内存中每个基本存储单元可以存放一个字节的数据,每个字节具有8位,也就是8个比特(bit)。
  • 每个内存单元有一个唯一的地址,常用一个16进制数表示和区分。

变量的声明

  • 变量的声明就是向内存申请变量,用于存放数据的过程,一般的声明方式为数据类型 变量名称
// 声明可乐数量变量 coke
int coke;
// 声明爆米花数量变量 popcorn
int popcorn;
// 声明消费总额变量 money
int money;

变量的命名规则

变量名称也叫做标识符,有固定的构造规则

  • 只能由字⺟、数字和下划线组成;
  • 数字不可以出现在第一个位置上;
  • C++的关键字(保留字)不可以⽤做标识符;
  • 最好简单易懂,用具有对应含义的英文或者拼音来表示;

变量的初始化

  • 在声明变量时,也可以赋予这个变量一个初值,这被称为变量的初始化
// 声明消费总额变量 money,并且初始化数值为 0
int money = 0;

变量的输出

  • 使用C++代码来在屏幕上展示初始化过的的消费总额,这叫做变量的输出,输出的内容是变量中保存的数值,而不是变量名称。
//将初始化好的消费总额打印在屏幕上,并且进行换行
cout << money << endl;

表达式

基本算术与赋值运算符

C++中,基本的算术运算分为如下5种:加法减法乘法除法以及求模。C++ 使用运算符(operator)来完成这些算术运算。

  • 加法:+运算符,比如表达式3 + 2可以得到5
  • 减法:-运算符,比如表达式21 - 12结果为9
  • 乘法:*运算符,比如表达式4 * 5将得到20
  • 除法:/运算符,比如表达式18 / 619/6,我们得到3
  • 求模:%运算符,比如表达式32 % 5将会得到2

比如小键想买5袋饼干,小戴想买3袋饼干,计算两人需要购买的饼干的总袋数时,我们会用到以下语句:

int cookie;
cookie = 5 + 3;

以上计算语句中出现了赋值运算符=,代表了把表达式的值赋给变量的操作。

在实际使用中,很多表达式都包含了多个运算符。比如,5 + 3 * 6。C++使用优先级规则来决定首先使用哪个运算符。

  • 对于算术运算符,遵循的是通常的代数优先级,乘除取模在先,加减运算在后。

  • 我们可以使用()圆括号对来明确计算的顺序,在()中的表达式具有最高的计算优先级。

  • 对于优先级相同的两个运算符,将通过

    结合律

    来决定计算的先后:

    • 算术运算符的结合律都是从左到右的;
    • 赋值运算符的结合律是从右到左的。

自增自减运算符

自增运算符++作用在变量操作数上,可以使该变量的值在原来基础上递增1

  • 当我们使用前缀模式时,该变量将先于赋值运算符进行递增,比如coffee_box = ++coffee
  • 当我们使用后缀模式时,该变量将后于赋值运算符进行递增,比如coffee_box = coffee++

自减运算符--同样作用在变量操作数上,可以使该变量的值在原来基础上递减1,用法同上。

计算且赋值运算符

C++提供了将算术运算与赋值操作相结合的运算符,称为计算且赋值运算符,符号表示与功能描述如下:

img

运算符优先级

总体上符合:赋值运算符< 逻辑与运算符< 关系运算符< 算术运算符。

推荐阅读