C/C++中表示数据运算的符号称为“运算符”。运算符所用到的操作数个数,称为运算符的“目数”。

C/C++语言的运算符有赋值运算符、算术运算符、逻辑运算符、位运算符等多类。

将变量、常量等用运算符连接在一起,就构成了“表达式”,表达式的计算结果称为“表达式的值”。

C/C++语言中常用的运算符介绍如下:

1. 算术运算符

运算符 说明
+
-
*
/
% 取模
++ 自增
-- 自减

2. 赋值运算符

  • 简单赋值:

    运算符 说明
    = 赋值
  • 复合算术赋值:
    运算符 示例 示例说明
    += a += b a = a+b
    -= a -= b a = a-b
    *= a *= b a = a*b
    /= a /= b a = a/b
    %= a %= b a = a%b
  • 复合位运算赋值:
    运算符 示例 示例说明
    &= a &= b a = a&b
    |= a |= b a = a|b
    ^= a ^= b a = a^b
    >>= a >>=b a = a>>b
    <<= a <<=b a = a<<b

3. 关系运算符

运算符 说明
> 大于
< 小于
>= 不小于
<= 不大于
== 等于
!= 不等于

关系运算符用于数值的大小比较,他们都是双目运算符。
关系运算符运算的结果是整型,值只有两种: 0 或非 0。 0 代表关系不成立,非 0 代表关系成立。

4. 逻辑运算符

运算符 说明 目数
&& 双目
|| 双目
单目

5. 位运算符

运算符 说明 目数
& 按位与 双目
| 按位或 双目
^ 按位异或 双目
~ 取反 单目
>> 右移 双目
<< 左移 双目

6. sizeof运算符

“sizeof”是 C/C++语言中的保留字,也是一个运算符。它的作用是求某一个变量占用内存的字节数,有两种用法:

  • sizeof(变量名)
  • sizeof(类型名)

7. 类型强制转换运算符

强制类型转换运算符的形式是:
(类型名)

它是单目运算符,功能是将其右边的操作数的值转换得到一个类型为“类型名”的值,它不改变操作数的值。

8. 运算符的优先级

一个表达式中可以有多个、多种运算符。不同的运算符优先级不同,优先级决定了表达式该先算哪部分、后算哪部分。

也可以用括号来规定表达式的计算顺序,一般推荐多用括号来表达复杂的表达式,避免出错和提高可读性。

C/C++语言中的运算符优先级列表如下:

补充:运算符 -> 拥有优先级为1。

最新文章

  1. 单调队列 &amp;&amp; 斜率优化dp 专题
  2. mysql 正则篇
  3. Android基本布局
  4. java web的开发 知识要点
  5. Java 使用jaxp修改节点
  6. SQL数据库面试题以及答案
  7. Andriod x86 4,4
  8. CXF整合Spring开发WebService
  9. iOS pop使用通知传值
  10. Recover a file even if it was not committed but it has to have been added when you use git reset head by mistake.
  11. Spark调研笔记第2篇 - 怎样通过Sparkclient向Spark提交任务
  12. Spring中的p标签(转)good
  13. Java JDBC连接SQL Server2005错误:通过端口 1433 连接到主机 localhost 的 TCP/IP 连接失败 及sql2008外围服务器
  14. fidderl 录制导出 jmeter格式文件
  15. CMDB资产管理系统开发【day26】:数据正式存入待存区
  16. CSS&amp;JS小结
  17. element-ui 点击获取table的行索引
  18. ACM知识点总结
  19. javascript-浏览器消息提醒
  20. Android 追加写入文件的三种方法

热门文章

  1. 题解 P1200 【[USACO1.1]你的飞碟在这儿Your Ride Is He…】
  2. OSPF虚连接简单配置
  3. [BJWC2011]元素 线性基
  4. 漫谈ElasticSearch关于ES性能调优几件必须知道的事
  5. BZOJ2595 [Wc2008]游览计划 【状压dp + 最短路】
  6. 常用Transformation算子
  7. OpenResty初涉
  8. Cyrus SASL介绍(翻译)
  9. 《提升c++性能的编程技术》读书笔记
  10. rename table table1 to table2;