「这是我参与2022首次更文挑战的第17天,活动详情查看:2022首次更文挑战」
前言
前篇文章简单说了一下不一样的C++的输入和输出,今天再来看看C++中的运算符,在之前的代码中只有简单的加减元素福,还有其他的运算符需要强调一下。
运算符分类
- 算术运算符
- 关系运算符
- 逻辑运算符
- 位运算符
- 赋值运算符
- 其他运算符
算术运算符
算数运算符常见的有加减乘除,其符号分别为+,-,*,/
不常见的符号:
- 取模求余:%
- 自增运算符:++
- 自增运算符:-- 原来自增自减运算符在C++这里就有了,我以为只有高级语言才有这些自增运算符
关系运算符
关系运算符都是比较简单的比较运算符:
- 等于: ==
- 不等于:!=
- 大于:>
- 小于:<
- 大于等于: >=
- 小于等于:<= 非常常见,用于代码逻辑中的判断
逻辑运算符
逻辑运算符和关系运算符一样非常常见:
- &&: 和 (都为真时结果为真)
- || :或 (有一个真就为真)
- ! :非 (真转假,假转真)
位运算符
特别是在底层开发中这个非常重要,主要在对0和1两个二进制数进行计算:
- & :与运算符 有0结果为0,都为1结果为1:
0&0=0; 0&1=0; 1&0=0; 1&1=1;
- | :或运算符 有1结果为1,都为0结果为0:
0|0=0; 0|1=1; 1|0=1; 1|1=1;
- ^:异或运算符:都为真结果为假,都为假结果为真,有真为真,
0^0=0; 0^1=1; 1^0=1; 1^1=0;
- ~ 取反运算符 对二进制数每一位取反:1转0,0转1:
~0101=1010
>>二进制左移运算符 将一个二进制数的每个数位全部左移若干次,右边补零: 0100左移一位结果为1000>>二进制右移运算符 将一个二进制数的每个数位全部左移若干次,正数左补0,负数左补1,右边丢弃: 0100右移一位结果为0010
赋值运算
常见的有=,+=,-=,*=,/=,%=。
不常见的有<<=,>>=,&=,^=,!=,其分别表示的为:左移且赋值运算符,右移且赋值运算符,按位与且赋值运算符,按位异或且赋值运算符,按位或且赋值运算符。
其他运算符
常见的有:
sizeof,这个并不是内置方法,是一个运算符,用于计算返回变量内存占用大小- & 指针运算符,返回变量的地址
-
- 指针运算符,指向一个变量
.和->,用来访问类、结构体成员的功能
总结
常见的运算符总结完毕,基本的运算符都基本了解,也没有做代码演示。就是其中运算符中的位运算符需要注意,在其他的运算符中的sizeof注意是一个运算符,不是内置方法。