news 2026/7/1 6:56:00

操作符详解(4)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
操作符详解(4)

(1)移位操作符

①左移操作符<<

就是将数字的二进制位向左移动一位。

如:1的二进制位00000000000000000000000000000001

那1<<1表示的是1的二进制位向左移动一位,就变成了00000000000000000000000000000010

②右移操作符>>

1.逻辑右移:

左边用零填充,右边丢弃。

2.算术右移:

左边用原该值的符号位填充,右边丢弃。

通常采用的都是算术右移。

如1>>1,表示的数字1的二进制位向右移动一位,就变成了

00000000000000000000000000000000

(2)位操作符

①&:对应的二进制位有0则为0,两个同时为1才为1。

如:2&3

00000000000000000000000000000010

00000000000000000000000000000011

得到的结果就是

00000000000000000000000000000010

②||:只要有1就是1,两个同时为0才为0。

③^:相同为0,相异为1

④~:按位取反

如:

00000000000000000000000000000001

取反之后就得到了

111111111111111111111111111111111111111110

注意:任何值^相同值等于零,如:3^3=0

0^任何值=任何值,如:0^3=3

(3)逗号表达式

整个表达式的结果为最后一个表达式的结果。

如:a=(3,5,7);

那么a只会被赋值为7

(4)操作符的优先级和结合性

①操作符先看优先级。

②当优先级相同时,结合性说了算

具体优先级与结合性,请上网搜索。

(5)表达式求值

①整型提升:表达式中的字符和短整型操作数在使用之前被转化为普通整形,这种转化称为整形提升,有符号的整数提升是按照变量的数据类型的符号位来提升的。无符号整数提升,高位补零。

②算术转换:讨论的类型大于等于整型类型的。

低位的向高位的转化。

其中int<unsigned int<long<unsigned long<float<double<long double

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/1 13:04:17

Python+Vue的校园自助洗衣服务管理系统 Pycharm django flask

收藏关注不迷路&#xff01;&#xff01;需要的小伙伴可以发链接或者截图给我 项目介绍 本系统共有管理员,用户2个角色&#xff0c;具体功能如下&#xff1a; 1.管理员角色的功能主要包括管理员登录&#xff0c;用户管理&#xff0c;洗衣机分类管理&#xff0c;洗衣机管理&…

作者头像 李华
网站建设 2026/6/28 15:26:19

LobeChat品牌命名建议生成器搭建

LobeChat品牌命名建议生成器搭建 在企业创新节奏不断加快的今天&#xff0c;一个响亮、独特且富有意义的品牌名称往往成为产品成功的第一步。然而&#xff0c;传统命名过程依赖团队头脑风暴&#xff0c;耗时长、创意易枯竭&#xff0c;且难以系统化迭代。与此同时&#xff0c;尽…

作者头像 李华
网站建设 2026/7/1 3:04:48

Flutter URL唤醒神器:url_launcher 6.3.2 全场景实战,从配置到进阶

【导语】在Flutter开发中&#xff0c;“唤醒外部资源”是高频需求——打开网页、拨打电话、发送邮件、启动地图导航……这些操作若从零实现&#xff0c;需适配多平台原生API&#xff0c;耗时且易出错。官方插件url_launcher 6.3.2完美解决此问题&#xff0c;它封装了全平台URL唤…

作者头像 李华
网站建设 2026/6/29 16:55:11

使用STM32H743的CMAKE工程添加到vscode

1、打开系统HSE时钟2、配置一下GPIO3、配置freertos系统时钟源&#xff0c;此处使用1ms时钟源配置freertos时钟。4、配置freertos&#xff1b;5、配置时钟树&#xff0c;使用的是外部晶振&#xff0c;25mhz;6、生产cmake工程&#xff1b;7、vscode配置cmake环境&#xff0c;直接…

作者头像 李华