5.C语言运算符

39 阅读1分钟

算数运算符

关系运算符

逻辑运算符

位运算符

位运算符用于比较二进制的每个bit位,并逐位执行操作

假设A = 60,且 B = 13,现在以二进制格式表示,它们如下所示:

A = 0011 1100

B = 0000 1101

&表示与:A&B = 0000 1100,如果双方相同的bit位一致就保持原数,不一致就为0

|表示或:A|B = 0011 1101,如果双方相同的bit位一致就保持原数,不一致就为1

^表示异或:A^B = 0011 0001,如果双方相同的bit位一致就为0,不一致就为1

~表示取反:~A  = 1100 0011,将每个bit位取反,0改为1,1改为0

<<:位运算,按二进制向左移动bit位,多余的高位丢掉,低位自动补0

A = 60 = 0011 1100,A << 2=1111 0000=240,移动一个位相当于乘以2,相当于60 *2 *2=240

:位运算,按二进制向右移动bit位,多余的低位丢掉,正数高位补0,负数高位补1

A = 60 = 0011 1100,A >> 2=0000 1111 = 15,移动一个位相当于除以2,相当于60 /2 /2=15

赋值运算符

三元运算符

如果条件为真 ? 则值为 X : 否则值为 Y