C语言中>>和<<如何使用?

举个列子最好~易懂点的!... 举个列子最好~易懂点的! 展开
 我来答
八哥说科技
高粉答主

2020-02-29 · 分享科技资讯,共享科技生活
八哥说科技
采纳数:111 获赞数:78616

向TA提问 私信TA
展开全部

C语言中<< 代表左移运算符,>> 代表右移运算符,位移位运算符是将数据看成二进制数,对其进行向左或向右移动若干位的运算。

<< 代表左移运算符:左移运算符用来将一个数的各二进制位全部左移若干位,移动的位数由右操作数指定,右操作数必须是非负值,其右边空出的位用0填补,高位左移溢出则舍弃该高位。

例如:设无符号短整型变量a为0111(对应二进制数为0000000100010001),则:a<<3 结果为0888(对应二进制数为0000100010001000)。

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

例如:var temp = 56 >> 2 变量temp的值为 14,因为56 (即二进制的 00111000)向右移两位等于 14 (即二进制的 00001110) 。

扩展资料:

相关运算规则:

1、在移位运算时,byte、short和char类型移位后的结果会变成int类型,对于byte、short、char和int进行移位时,规定实际移动的次数是移动次数和32的余数,也就是移位33次和移位1次得到的结果相同。

2、移动long型的数值时,规定实际移动的次数是移动次数和64的余数,也就是移动66次和移动2次得到的结果相同。

3、位移位运算符的优先级:算术运算符优先于位移位运算符优先于关系运算符,位移位运算符是同级别的,结合性是自左向右。

参考资料来源:百度百科-c语言运算符号

参考资料来源:百度百科-右移运算符

参考资料来源:百度百科-左移运算符

路尧家的顾小言
2019-09-29 · TA获得超过9395个赞
知道答主
回答量:336
采纳率:100%
帮助的人:4.7万
展开全部

1、左移运算符(<<):按二进制形式把所有的数字向左移动对应的位数,高位移出(舍弃),低位的空位补零。

格式:需要移位的数字 << 移位的次数

例如:3<<2

3转换为二进制是0011,所有数字左移2个位置,空位补0,得到1100,即十进制数12。

2、右移运算符(>>):按二进制把所有的数字向右移动对应位移位数,低位移出(舍弃),高位的空位补符号位(正数补零,负数补1)。

格式:需要移位的数字 >> 移位的次数

例如:11 >> 2

11的二进制为1011,所有数向右移2个位置,因为11是正数,所以高位补0,得0010,是十进制的2。

扩展资料:

移位运算符是位操作运算符的一种。移位运算符可以在二进制的基础上对数字进行平移。按照平移的方向和填充数字的规则分为三种:<<(左移)、>>(带符号右移)和>>>(无符号右移)。

数学意义:

1、在数字没有溢出的前提下,对于正数和负数,左移一位都相当于乘以2的1次方,左移n位就相当于乘以2的n次方。

2、右移一位相当于除2,右移n位相当于除以2的n次方。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
幻翼高达Zero
2019-05-24 · TA获得超过1.7万个赞
知道答主
回答量:499
采纳率:0%
帮助的人:7.8万
展开全部

C语言中的>>和<<分别是左移运算符和右移运算符,用于整数在二进制形式的移位运算。

1、左移运算符(<<)

规则:按二进制形式把所有的数字向左移动对应的位数,高位移出(舍弃),低位的空位补零。

语法格式:需要移位的数字 << 移位的次数,例如: 3 << 2,则是将数字3左移2位。

数学意义:在数字没有溢出的前提下,对于正数和负数,左移一位都相当于乘以2的1次方,左移n位就相当于乘以2的n次方。

2、右移运算符(>>)

规则:按二进制形式把所有的数字向右移动对应位移位数,低位移出(舍弃),高位的空位补符号位,即正数补零,负数补1。

语法格式:需要移位的数字 >> 移位的次数,例如11 >> 2,则是将数字11右移2位。

数学意义:右移一位相当于除2,右移n位相当于除以2的n次方。

扩展资料:

C语言中的无符号右移运算符(>>>):

按二进制形式把所有的数字向右移动对应位数,低位移出(舍弃),高位的空位补零。对于正数来说和带符号右移相同,对于负数来说不同。其他结构和>>相似。

参考资料来源:百度百科-移位运算符

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
陈丽芬i
高粉答主

2019-08-16 · 繁杂信息太多,你要学会辨别
知道小有建树答主
回答量:2155
采纳率:83%
帮助的人:115万
展开全部

C语言中的>>和<<分别是左移运算符和右移运算符,用于整数在二进制形式的移位运算。

1、左移运算符(<<)

规则:按二进制形式把所有的数字向左移动对应的位数,高位移出(舍弃),低位的空位补零。

语法格式:需要移位的数字 << 移位的次数,例如: 3 << 2,则是将数字3左移2位。

数学意义:在数字没有溢出的前提下,对于正数和负数,左移一位都相当于乘以2的1次方,左移n位就相当于乘以2的n次方。

2、右移运算符(>>)

规则:按二进制形式把所有的数字向右移动对应位移位数,低位移出(舍弃),高位的空位补符号位,即正数补零,负数补1。

语法格式:需要移位的数字 >> 移位的次数,例如11 >> 2,则是将数字11右移2位。

数学意义:右移一位相当于除2,右移n位相当于除以2的n次方。

扩展资料:

一、C语言运算符号的种类

1 算术运算符

用于各类数值运算。包括加(+)、减(-)、乘(*)、除(/)、求余(或称模运算,%)、自增(++)、自减(--)共七种。

2.关系运算符

用于比较运算。包括大于(>)、小于(<)、等于(==)、 大于等于(>=)

、小于等于(<=)和不等于(!=)六种。

3.逻辑运算符

用于逻辑运算。包括与(&&)、或(||)、非(!)三种。

4.位操作运算符

参与运算的量,按二进制位进行运算。包括位与(&)、位或(|)、位非(~)、位异或(^)、左移(<<)、右移(>>)六种。

5.赋值运算符

用于赋值运算,分为简单赋值(=)、复合算术赋值(+=,-=,*=,/=,%=)和复合位运算赋值(&=,|=,^=,>>=,<<=)三类共十一种。

参考资料来源:百度百科-c语言运算符号

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
灵巧且舒坦的小兔子B
2019-07-12 · TA获得超过4774个赞
知道答主
回答量:130
采纳率:100%
帮助的人:1.7万
展开全部

>>和<<和是C语言中的“右移运算符”。一般情况下,是按位操作。 

例如:short int a=8;a=a>>1; 1.a=0 000 1000 2.右移一位后:a= 0 000 100 3.补0:a=0 000 

0100 4.化为十进制数:a=4 举例:int a=8;a=a>>1; 1.a=0 000 0000 0000 1000 2.右移一位后:

a= 0 000 0000 0000 100 3.补0:a=0 000 0000 0000 0100 4.化为十进制数:a=4

特点:

1、双目运算符,就像+、-、*、/一样,格式为(数1)>>(数2)

2、数1是被操作数,如被减数、被除数等;数2是右移位数。 

3、优先级低,结合性:从左向右运算 如:8>>1=?表示将被移数向右移动1位 如何操作?

化十进制数为(注意了)对应的二进制数,对应指格式对应。 通通右移,不足补0 3.化为十进制数。 

扩展资料

一、C语言运算符号的种类

1 算术运算符

用于各类数值运算。包括加(+)、减(-)、乘(*)、除(/)、求余(或称模运算,%)、自增(++)、自减(--)共七种。

2.关系运算符

用于比较运算。包括大于(>)、小于(<)、等于(==)、 大于等于(>=)

、小于等于(<=)和不等于(!=)六种。

3.逻辑运算符

用于逻辑运算。包括与(&&)、或(||)、非(!)三种。

4.位操作运算符

参与运算的量,按二进制位进行运算。包括位与(&)、位或(|)、位非(~)、位异或(^)、左移(<<)、右移(>>)六种。

5.赋值运算符

用于赋值运算,分为简单赋值(=)、复合算术赋值(+=,-=,*=,/=,%=)和复合位运算赋值(&=,|=,^=,>>=,<<=)三类共十一种。

6.条件运算符

这是一个三目运算符,用于条件求值(?:)。

7.逗号运算符

用于把若干表达式组合成一个表达式(,)。

8.指针运算符

用于取内容(*)和取地址(&)二种运算。

9.求字节数运算符

用于计算数据类型所占的字节数(sizeof)。

10.特殊运算符

有括号(),下标[],成员(→,.)等几种。

参考资料来源:百度百科-c语言运算符号

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式