富华巴克网

生活百科全书

c语言移位运算符(c语言移位运算符是什么)

整型溢出:在整型数计算时,结果无法继续正确存储在整型变量中,即运算结果超出了整型数值所能表示的范围。比如计算100的阶乘等。溢出后的表现就是计算结果与期望值不符。

位操作符,是C语言中的一组操作符,包括按位与&,按位或|,按位取反~,按位异或^, 左移>,以及在这六个操作符上扩展出的赋值符号,包括&=,|=,~=,^=,>=等。

其中:1 &为按位与操作,a&b结果的每位上,只有当a,b对应位上均为1时,才为1,否则结果位上为0。

2 |为按位或操作,只有a,b对应位上均为0,结果对应位上才为0;否则结果的该位上值为1。3 ~取反,为单目操作,只有一个操作数,当操作数的某位上值为1时,结果值为0;否则结果值为1。4 ^异或操作,a,b对应位上相同时,结果位上值为0;否则值为1。5 >右移操作,a>>b的结果为,将a的各个位向右移动b位,右侧b位抛弃,左侧补b个0或1。

当a为无符号数,或正数时,左侧补0;当a为有符号负数时,左侧补1。

移位操作在程序设计中,位操作运算符的一种。1.在c++中,移位运算符有双目移位运算符:<<(左移)和>>(右移)。移位运算符组成的表达式也属于算术表达式,其值为算术值。

2.左移运算是将一个二进制位的操作数按指定移动的位数向左移位,移出位被丢弃,右边的空位一律补0。

3.右移运算是将一个二进制位的操作数按指定移动的位数向右移动,移出位被丢弃,左边移出的空位或者一律补0,或者补符号位,这由不同的机器而定。在使用补码作为机器数的机器中,正数的符号位为0,负数的符号位为1。

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言