栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C++位操作

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++位操作

目录

按位取反

奇数和偶数

安慰异或^

左移<<


按位取反

按位取反也包扣符号位的取反,而且系统存储的是数据的补码,而不是原码。

eg:

5----0 0101   第一个0为符号位 

~5---1 1010 (这个是原码)--->补码:1 0101+1=1 0110

所以最终结果为-6.

正数取反一定是负数,负数取反一定是正数

奇数和偶数

二进制数最低位,即最后一位决定这个二进制对应的十进制是偶数还是奇数

0--偶数

1--奇数

安慰异或^

不同为1,相同为0

A:010101

B:100111

C:110010

A^B=C

A^C=B

B^C=A

可以利用^运算实现两个变量值的交换

A=10;

B=20;

C=A^B;

B=C^B;//C^B的结果为A

A=C^A;//C^A的结果为B

对于char型也适用

左移<<

num1<

表示把num1左移n位,空出来的用0补,移除的不管,左移之后的数m等于num1乘以2的n次方(m=num1*2^n)

右移同理,只是m是num1除以2的n次方

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/316088.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号