C++运算符

C++运算符知识大全 – 编程小白必备
{ }

C++运算符知识大全

编程小白必备 – 用大白话解释所有C++运算符,附代码示例

算术运算符

+ 加法运算符

就像数学里的加法,把两个数加在一起。例如:3 + 5 等于 8。
int a = 10 + 5; // a的值是15

减法运算符

就像数学里的减法,计算两个数的差。例如:10 – 3 等于 7。
int b = 20 – 8; // b的值是12

* 乘法运算符

就像数学里的乘法,计算两个数的乘积。例如:4 * 6 等于 24。
int c = 5 * 6; // c的值是30

/ 除法运算符

就像数学里的除法,计算两个数的商。注意:整数除法会舍去小数部分。
int d = 15 / 4; // d的值是3(整数除法) double e = 15.0 / 4; // e的值是3.75

% 取模运算符

计算两个数相除后的余数。例如:10 % 3 等于 1(因为10除以3得3余1)。
int f = 10 % 3; // f的值是1

关系运算符

== 等于运算符

比较两个值是否相等。注意:是两个等号,不是一个(一个等号是赋值)。
bool result = (5 == 5); // result的值是true

!= 不等于运算符

比较两个值是否不相等。例如:5 != 3 的结果是 true。
bool result = (5 != 3); // result的值是true

> 大于运算符

检查左边的值是否大于右边的值。例如:10 > 5 的结果是 true。
bool result = (10 > 5); // result的值是true

< 小于运算符

检查左边的值是否小于右边的值。例如:3 < 8 的结果是 true。
bool result = (3 < 8); // result的值是true

>= 大于等于运算符

检查左边的值是否大于或等于右边的值。例如:5 >= 5 的结果是 true。
bool result = (5 >= 5); // result的值是true

<= 小于等于运算符

检查左边的值是否小于或等于右边的值。例如:4 <= 5 的结果是 true。
bool result = (4 <= 5); // result的值是true

逻辑运算符

&& 逻辑与运算符

当两边的条件都为真时,结果才为真。类似”而且”的意思。
bool result = (5 > 3) && (10 < 20); // result为true

|| 逻辑或运算符

当两边条件有一个为真时,结果就为真。类似”或者”的意思。
bool result = (5 > 10) || (8 < 9); // result为true

! 逻辑非运算符

把真变成假,把假变成真。类似”不是”的意思。
bool result = !(5 == 3); // result为true(因为5不等于3)

位运算符

& 按位与

对两个数的二进制位逐位比较,当两个位都是1时结果位才是1。
int a = 5; // 二进制: 0101 int b = 3; // 二进制: 0011 int c = a & b; // 结果: 0001 (十进制1)

| 按位或

对两个数的二进制位逐位比较,当两个位中有一个是1时结果位就是1。
int a = 5; // 二进制: 0101 int b = 3; // 二进制: 0011 int c = a | b; // 结果: 0111 (十进制7)

^ 按位异或

对两个数的二进制位逐位比较,当两个位不同时结果位才是1。
int a = 5; // 二进制: 0101 int b = 3; // 二进制: 0011 int c = a ^ b; // 结果: 0110 (十进制6)

<< 左移运算符

将二进制位向左移动指定位数,右边补0。每左移一位相当于乘以2。
int a = 5; // 二进制: 0101 int b = a << 1; // 结果: 1010 (十进制10)

>> 右移运算符

将二进制位向右移动指定位数,左边补0。每右移一位相当于除以2。
int a = 10; // 二进制: 1010 int b = a >> 1; // 结果: 0101 (十进制5)

赋值运算符

= 基本赋值运算符

把右边的值赋给左边的变量。注意不要和等于运算符(==)混淆。
int a = 10; // 把10赋值给变量a

+= 加后赋值

把左边的变量加上右边的值,再把结果赋给左边的变量。
int a = 5; a += 3; // 等同于 a = a + 3; 现在a的值是8

-= 减后赋值

把左边的变量减去右边的值,再把结果赋给左边的变量。
int a = 10; a -= 4; // 等同于 a = a – 4; 现在a的值是6

*= 乘后赋值

把左边的变量乘以右边的值,再把结果赋给左边的变量。
int a = 5; a *= 3; // 等同于 a = a * 3; 现在a的值是15

/= 除后赋值

把左边的变量除以右边的值,再把结果赋给左边的变量。
int a = 15; a /= 3; // 等同于 a = a / 3; 现在a的值是5

其他运算符

?: 条件运算符

唯一的三元运算符,类似简单的if-else语句。
int a = 10, b = 20; int max = (a > b) ? a : b; // 如果a>b,max等于a,否则等于b

++ 自增运算符

把变量的值增加1。分为前置(++i)和后置(i++)两种形式。
int i = 5; i++; // 现在i的值是6 ++i; // 现在i的值是7

自减运算符

把变量的值减少1。分为前置(–i)和后置(i–)两种形式。
int i = 10; i–; // 现在i的值是9 –i; // 现在i的值是8

, 逗号运算符

依次执行多个表达式,但返回最后一个表达式的值。
int a = (5, 10, 15); // a的值是15

sizeof 大小运算符

返回变量或类型所占的字节大小。
int size = sizeof(int); // 通常返回4(字节)

给编程小白的贴心提示

1. 运算符优先级

运算符有计算顺序,就像数学里的先乘除后加减:

  • 括号()优先级最高
  • 然后是算术运算符(* / % 高于 + -)
  • 接着是比较运算符(> < >= <=)
  • 最后是逻辑运算符(&& ||)

2. 常见错误

  • 混淆 = (赋值) 和 == (比较)
  • 整数除法忘记小数部分:5/2=2 而不是2.5
  • 自增自减运算符在表达式中的使用
  • 运算符优先级导致的意外结果

3. 最佳实践

  • 多用括号明确计算顺序
  • 复杂的表达式拆分成多行
  • 避免在表达式中使用自增自减运算符
  • 使用空格增加可读性:a = b + c * d;

4. 记忆技巧

  • 赋值运算符:等号右边给左边
  • 比较相等:两个等号(==)才比较
  • 自增自减:++加1,–减1
  • 逻辑运算符:&&是而且,||是或者

C++运算符知识大全 | 编程小白入门指南 | 用大白话解释复杂概念

提示:实践是学习编程的最佳方式!打开你的IDE尝试这些示例吧

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部