设为首页 加入收藏

TOP

C++中的位运算符
2014-02-08 13:37:15 来源: 作者: 【 】 浏览:182
Tags:运算

  在我们学习的VB编程语言中运算符都包含了那么几类:算术运算符、逻辑运算符、关系运算符、赋值运算符等。

  这算是C++与其的共性吧。当然作为一门独立的语言,它也会有专门属于自己的运算符。或者说目前我认为,这个是我新接触到的一些运算符(其他的编程语言没怎么接触过)。

  1、位运算符

  一种二进制运算符,分为移位运算和按位运算。

  此运算符,在操作时,要先将操作数按二进制形式逐位进行逻辑运算和操作。

  1.例如:

  unsigned char c(135)二进制表示为10000111

  对于取反(~):即将原来的0变为1,把原来的1变为0,最后为01111000,即为十进制中的120

  2、左移《:是操作数向左移动其右操作数所指定的位数,移出位补0

  unsigned char d(43)  d《1

  43的二进制表示为:00101011,统一将数字向左移动一位,为01010110,即十进制的86

  根据这种原理,其实每当左移一位时,结果为操作数*2,移两位,操作数*4…依次为操作数*2^n

  同理,右移为除法

  3.异或运算,我个人认为这个还是有点儿难理解的。规则为;"同则为0,异则为1"

  个人观点:异或,只有不相同的才能称之为"异或",那么相同则不符合条件,这里1代表true,0代表false,那么只有几个同时满足某个条件时,此时,不符合异或的条件,那么结果为0.若两个数中只有一个或几个而不是全部,那么结果为1.

  以上,是C++中关于位运算符的一些收获,此外,在使用位运算符时,还应注意优先级问题和溢出问题。

  优先级;  2、位求反 (~)

  6、左移(《)、右移(》)

  9、位于(&):其实就是且运算

  10、异或(^)

  11、位或(|):或运算

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇初探C++数组的size可以是变量 下一篇C++编译链接的那些小事

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·PostgreSQL 索引 - (2025-12-25 22:20:43)
·MySQL Node.js 连接 (2025-12-25 22:20:41)
·SQL 撤销索引、表以 (2025-12-25 22:20:38)
·Linux系统简介 (2025-12-25 21:55:25)
·Linux安装MySQL过程 (2025-12-25 21:55:22)