C语言中的运算符

C语音中的运算符,按其功能,可以分为:算数运算符,关系运算符,逻辑运算符,自增和自减运算符,按位运算符,赋值运算符,和条件运算符。

1、算数运算符:+  -  *  / %,操作数可以为任何基本类型,运算结果的类型和操作数类型相同。

2、关系运算符: <    <=    >    >=    !=    ==,操作数可以为任何基本类型,一般为整型,运算结果,如果两个操作数关系成立,则结果为非0(一般为整数1),否则为0。结果类型       一般为int。

3、逻辑运算符:&&(逻辑与)  || (逻辑或)   !(逻辑非)。每一个操作数都是一个表达式,操作数可以为任何基本类型。结果类型一律为int(0或非0)。

     e1&&e2    两者都为真时,结果才为真

     e1||e2        两者都为假时,结果才为假     

     !e1          真为假,假为真      逻辑表达式!e等价于关系表达式  e ==0

4、自增和自减运算符:++   --     a=a++   ,a的值变两次,自增的结果被表达式的返回值覆盖

5、按位运算符:&(按位与)  |(按位或) ~(求反) ^(按位加、异或)   <<(左移)   >>(右移)操作数必须为整数

      例: short k =0,求~k.      short型占两个字节,首先把k表示成二进制00000000 00000000,~k逐位求反11111111 11111111,而k是有符号数,所以结果为-1.

     按位与和按位或运算符除针对操作数的逐个二进位进行运算外,运算规则分别和逻辑与和逻辑或相同。

     按位加则是无进位的二进制加法,1加1为0,1加0为1(两者同为0,不同为1)

     按位与通常用于取位操作,按位或通常用于赋值操作,按位加通常用于取反操作


常见运算符的优先级如下:

优先级

运算符

结合性

1

() [] .

从左到右

2

! +(正)  -(负) ~ ++  --

从右向左

3

* / %

从左向右

4

+(加) -(减)

从左向右

5

<< >> >>>

从左向右

6

<  <=  >  >=  instanceof

从左向右

7

==   !=

从左向右

8

&(按位与)

从左向右

9

^

从左向右

10

|

从左向右

11

&&

从左向右

12

||

从左向右

13

?:

从右向左

14

= += -= *= /= %= &= |= ^=  ~=  <<= >>=   >>>=

从右向左




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值