| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> C++知识库 -> 【C语言】运算符 -> 正文阅读 |
|
[C++知识库]【C语言】运算符 |
目录 2.1.1 加(+)、减(-)、乘(*)、除(/)、模除(%) 一、概念? ? ? ? 运算符是告诉程序执行特定的算术或逻辑操作的符号,运算符会连接多个表达式,所谓的表达式就是由运算符、运算量和标点符号等组成的有效的序列,是用来说明一个运算的过程的。 二、种类2.1 算术运算符????????用于各类数值运算。包括加(+)、减(-)、乘(*)、除(/)、求余(或称模除运算,%)、自增(++)、自减(--)共七种。 2.1.1 加(+)、减(-)、乘(*)、除(/)、模除(%)????????比较简单,跟常用的数学算术运算没有区别;
执行结果: ?? ?2.1.2 自增(++)、自减(--)? ? ? ? a++ / ++a 算术结果等同于 a = a+1; ? ? ? ? a-- / --a 算术结果等同于 a = a -1 ; ? ? ? ? 注意:前缀的自增自减和后缀的自增自减是不一样的,使用时需要注意。
????????运行结果: ? ? ? ? ① a = 10; b = a++;实现逻辑:第一步在空间中临时放置a 的值10,假设此空间名字为temp;第二步执行a = a+1;第三步将temp的值赋值给b。 ? ? ? ? ②x = 10; y = ++x;实现逻辑: 第一步执行x = x+1; 第二步将x的值赋值给y。 2.2 关系运算符????????用于比较运算。包括大于(>)、小于(<)、等于(==)、 大于等于(>=)、小于等于(<=)和不等于(!=)六种。? ? ????????注意:关系运算符的判断相等是两个等号,一个等号是赋值运算符,关系运算符表达式的结果是一个 bool 类型,0 表示假 非0表示真。
2.3 逻辑运算符2.3.1包括 与(&&)、或(||)、非(!)三种。????????逻辑运算符使用来连接由多个关系运算符组成的表达式的,逻辑运算符的表达式的结果也是 bool 类型。
2.3.2?逻辑运算符的短路原则:????????逻辑与:逻辑与连接的多个表达式,遇到某个表达式为假,后面的表达式就都不执行了,因为这个假足以判断整个表达式为假。 ????????逻辑或:逻辑或连接的多个表达式,遇到某个表达式为真,后面的表达式就都不执行了,因为这个真足以判断整个表达式为真。
????????上述代码执行结果: ? ?2.4 位操作运算符????????参与运算的量,按二进制位进行运算。包括位与(&)、位或(|)、位非(~)、位异或(^)、左移(<<)、右移(>>)六种。 ????????一般位运算都是无符号数参与运算,如果用有符号数,会涉及原码反码补码转换的问题。 ????????& 按位与 :按位运算 全1为1 有0为0 ????????| 按位或 :按位运算 有1为1 全0为0 ????????^ 按位异或 :按位运算 不同为1 相同为0 ????????~ 按位取反 :按位运算 1变0 0变1 ? ? ? ?<< 按位左移:整个数据向左移动 高位舍弃 低位补0 ????????>> 按位右移 :整个数据向右移动 高位补0 舍弃低位
2.5 赋值运算符????????用于赋值运算,分为简单赋值(=)、复合算术赋值(+= , -= , *= , /= , %=)和复合位运算赋值(&= , |= , ^= , >>= , <<= )三类共十一种。 ? ? ? ? 注意: ????????????????1.一个等号是赋值 两个等号是关系运算符判断相等 ????????????????2. 左=右, 将右边的值赋值给左边 ????????????????3.常量不允许放在等号的左边 2.6 条件运算符????????这是一个三目运算符,用于条件求值(?:)。 ? ? ? ? 格式:表达式1?表达式2:表达式3; ? ? ? ? 执行顺序:先执行表达式1,如果1的值为真则执行表达式2,否则执行表达式3;
执行结果: ?2.7 逗号运算符????????用于把若干表达式组合成一个表达式(,)。 ????????格式:(表达式1, 表达式2, ..,表达式n) ????????执行逻辑:从左到右依次执行,每个表达式都会参与运算,最后一个表达式的结果,就是整个逗号运算符表达式的结果。 2.8 指针运算符????????用于取内容(*)和取地址(&)二种运算。 ? ? ? ? 本文不再详细描述,后续指针章节再聊。 2.9 求字节数运算符????????用于计算数据类型所占的字节数(sizeof)。 ? ? ? ? 注意:sizeof()用法非常像函数调用,但是sizeof为运算符。
上述代码执行结果: ?? 2.10 特殊运算符????????有括号(),下标[],成员(→,.)等几种。 三、 运算符优先级? ? ? ? 单算移关与,异或逻条赋 |
|
C++知识库 最新文章 |
【C++】友元、嵌套类、异常、RTTI、类型转换 |
通讯录的思路与实现(C语言) |
C++PrimerPlus 第七章 函数-C++的编程模块( |
Problem C: 算法9-9~9-12:平衡二叉树的基本 |
MSVC C++ UTF-8编程 |
C++进阶 多态原理 |
简单string类c++实现 |
我的年度总结 |
【C语言】以深厚地基筑伟岸高楼-基础篇(六 |
c语言常见错误合集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/23 5:23:43- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |