C++ 运算符全解析:从基础概念到实际应用

C++ 运算符

运算符用于对变量和值执行操作。

在下面的示例中,我们使用 + 运算符将两个值相加:

cpp 复制代码
int x = 100 + 50;

虽然 + 运算符经常用于将两个值相加,就像上面的示例一样,但它也可以用于将变量和一个值相加,或者将一个变量和另一个变量相加:

cpp 复制代码
int sum1 = 100 + 50;        // 150 (100 + 50)
int sum2 = sum1 + 250;      // 400 (150 + 250)
int sum3 = sum2 + sum2;     // 800 (400 + 400)

C++ 将运算符分为以下几组:

  • 算术运算符
  • 赋值运算符
  • 比较运算符
  • 逻辑运算符
  • 位运算符

算术运算符

算术运算符用于执行常见的数学运算。

运算符 名称 描述 示例
+ 加法 将两个值相加 x + y
- 减法 从一个值中减去另一个值 x - y
* 乘法 将两个值相乘 x * y
/ 除法 将一个值除以另一个值 x / y
% 取模 返回除法余数 x % y
++ 递增 将变量的值增加 1 ++x
-- 递减 将变量的值减少 1 --x

C++ 赋值运算符

赋值运算符

赋值运算符用于将值赋给变量。

在下面的示例中,我们使用赋值运算符(=)将值 10 赋给一个名为 x 的变量:

cpp 复制代码
int x = 10;

加法赋值运算符(+=)将一个值加到一个变量上:

cpp 复制代码
int x = 10;
x += 5;

所有赋值运算符的列表:

运算符 示例 等同于
= x = 5 x = 5
+= x += 3 x = x + 3
-= x -= 3 x = x - 3
*= x *= 3 x = x * 3
/= x /= 3 x = x / 3
%= x %= 3 x = x % 3
&= x &= 3 x = x & 3
|= x |= 3 x = x | 3
^= x ^= 3 x = x ^ 3
>>= x >>= 3 x = x >> 3
<<= x <<= 3 x = x << 3

C++ 比较运算符

比较运算符用于比较两个值(或变量)。这在编程中很重要,因为它帮助我们找到答案并做出决策。

比较的返回值要么是 1,要么是 0,即 true(1)或 false(0)。这些值被称为布尔值,你将在布尔和 If..Else 章节中学到更多关于它们的知识。

在下面的示例中,我们使用大于运算符(>)来判断 5 是否大于 3

cpp 复制代码
int x = 5;
int y = 3;
cout << (x > y); // 返回 1(true)因为 5 大于 3

所有比较运算符的列表:

运算符 名称 示例
== 等于 x == y
!= 不等于 x != y
大于 x > y
< 小于 x < y
>= 大于等于 x >= y
<= 小于等于 x <= y

C++ 逻辑运算符

逻辑运算符用于确定变量或值之间的逻辑关系:

运算符 名称 描述 示例
&& 逻辑与 如果两个语句都为真则返回 true x < 5 && x < 10
|| 逻辑或 如果其中一个语句为真则返回 true x < 5 || x < 4
! 逻辑非 反转结果,如果结果为真则返回 false !(x < 5 && x < 10)

你将在后面的章节中学到更多关于 truefalse 值的知识。

最后

为了方便其他设备和平台的小伙伴观看往期文章:

微信公众号搜索:Let us Coding,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎点赞、收藏、关注

相关推荐
浩浩乎@几秒前
windows+cmake+vscode+NDK远程调试安卓端C++项目
c++·vscode
uhakadotcom8 分钟前
Turborepo:提升Monorepo项目构建效率的利器
后端·面试·github
多云的夏天10 分钟前
C++-Mongoose(2)-https-server-openssl
开发语言·c++·https
uhakadotcom11 分钟前
Python 列表添加元素:`append()` 和 `extend()` 的区别
后端·面试·github
孙同学_13 分钟前
【C++】stack和queue
开发语言·c++
牛奶咖啡.85426 分钟前
树和图论(详细整理,简单易懂!)
数据结构·c++·算法·深度优先·图论
风象南36 分钟前
SpringBoot中3种优雅停机的实现方式
java·spring boot·后端
飞天小牛肉3 小时前
26届Java暑期实习面经,腾讯视频一面
java·面试·秋招·校招
ChoSeitaku3 小时前
NO.71十六届蓝桥杯备战|搜索算法-递归型枚举与回溯剪枝|枚举子集|组合型枚举|枚举排列|全排列问题(C++)
c++·蓝桥杯·剪枝
淳于韻珊5 小时前
Java语言的散点图
开发语言·后端·golang