一篇文章教你在C++中操作符可分为哪几种类和用法

时间:2021-11-07 08:16:26

前篇

在上一篇中,我们讲了算数操作符,移位操作符,我们还顺带着把几个知识点重新给大家讲了一遍,相信有了上篇的基础,这节课上起来会特别的轻松吧。

正片开始

这篇我来给大家讲解,什么叫位操作符,什么又叫赋值操作符。

首先,那么我们先讲概念,什么叫做位操作符呢?操作的又是那个位?这里操作的是二进制位。位操作符就是把二进制的数字按照规定好的程序执行起来。

这里的符号有:

符号 代表的含义
& 按位与
| 按位或
^ 按位异或

按位与:

那么我们先来讲按位与,我们来举个例子:

一篇文章教你在C++中操作符可分为哪几种类和用法

就比如这个,因为这里 3 的二进制位为:011

5 这里的二进制位为:101

在这里,我们称:0为假,1为真

按位与的时候,就是一假为假,全真则真。那么,意思就是:

一篇文章教你在C++中操作符可分为哪几种类和用法

这里我们算出来结果是001,我们在把这个二进制数字转换为十进制数字结果是1,现在就可以在程序中调试出这个数字。我们来看一下调试结果。

一篇文章教你在C++中操作符可分为哪几种类和用法

答案是肯定的。

按位或:

先举个栗子,我们经常说,甲或者乙来帮忙都可以,那么这句话的意思就是甲来了,乙就可以不用来,乙来了,甲也就可以不用来。按位或也是相同的道理,写法和按位与一致只不过把&换成|,我们可以按照按位与来分析一下按位或的工作原理。大同小异。

它也有口诀:有真则为真,全假则为假。我们仍然以3,5举个鲜明的例子来给大家看一下:

一篇文章教你在C++中操作符可分为哪几种类和用法

这里二进制数为111,转换十进制数为 :7

我们一传代码看一下答案。

一篇文章教你在C++中操作符可分为哪几种类和用法

由此发现,上述正确。

按位异或:

接下来,我们来讲最后一个知识点:按位异或

有的小白心里就会说,可以仿照前面两种形式的概念,我们可以去猜,按位异或是什么。

答案是可以的。

按位与是:一假全假,全真则真。

按位或是:有真为真,全假则假。

那么,有的小白就会想到会不会是:全真则假,全假为真呢?这个猜想一半是错误的。

按位异或的计算方式是:对应二进制位相同则为假,对应二进制位相异则为真 。那么这是什么意思呢?我们来看一下。

一篇文章教你在C++中操作符可分为哪几种类和用法

我们可以看到,输出的结果是:110 转换十进制数字为 6

我们看一下实际操作的答案:

一篇文章教你在C++中操作符可分为哪几种类和用法

答案完全相等!!!

我给大家在梳理一下本篇的口诀,这样大家在学习的时候会事半功倍。

按位与:一假全假,全真则真。

按位或:有真为真,全假为假。

按位异或:相异为真,相同为假。

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注服务器之家的更多内容!

原文链接:https://blog.csdn.net/m0_61166131/article/details/120396068