运算符讲解

1、运算符
单算移关与,异或逻条赋!                          从高到底排列

单目运算符,算术运算符,左移,右移,关系运算符,按位与,异或,按位或,逻辑运算符,条件运算符,赋值运算符

 算数运算符
+  -  *  /  %  ++  --

注意:%不能用于浮点数

++在前:先自加,在赋值

++在后:先赋值,在自加

注意:当a++或者++a,单独成立一条语句时,都相当于给a+1

1.关系运算符

>  <  >=  <=  ==  !=

关系运算符:比较的结果是真或假

注意:0 < a <5//error

注意!!等号的书写

常量写在等号的左边

(如果判断相等时少写了一个=,会报错)

1.3 逻辑运算符
&&  ||  !

&&:表达式1&&表达式2

截断法则:有一个为假,结果就为假,前一个为假,后面就不再进行运算了!

||:表达式1||表达式2

截断法则:有一个为真,结果就为真,前一个为真,后面就不在进行运算了!

!: !0 为1

1.4 sizeof运算符
Sizeof(变量名)或sizeof(数据类型)

1.5 三目运算符
表达式1?表达式2:表达式3

注意:

判断表达式1,是否成立,如果成立,就将表达式2的值作为整个表达式的值,否则,就将表达式3的值作为整个表达式的值

1.6 逗号运算符
表达式1,表达式2,表达式3,。。。。。。表达式n

从左往右依次计算每个表达式的值,将表达式n的值作为整个表达式的值

(注意:必须依次计算,以防止前面的表达式改变了表达式n中的变量的值)

注意:逗号运算符的优先级是最低的,因此在使用的时候,要加上括号

1.7 位运算符
&  |  ~  <<  >>  ^

1.7.1 &运算符

都为1,才为1,有一个为0,就为0

1000 0010

& 1100 1111

  1000 0010

案例:将1101 0011的0-2位进行清零

1101 0011

&   1111 1000      (~7)

1101 0000

101010100101010100111    0-2位进行清零

111111111111111111000 == ~( 0000000000111) = = ~7

1.7.2 |运算符

都为0 ,才为0,有一个为1,就是1

1000 0010

|   1100 1111

1100 1111

案例:将1101  0101的3~5位 置为101

清零3-5 &  1100  0111   ~(111000)   &(~56)

        11 000 101

     |  00 101 000

        11 101 101

101010100101010100111  3-5 置为101

置零(3-5) &111111111111111 000111   ~(000000000111000)  = =(~56)
置为101    | 000000000000000 101 000
             

1.7.3 取反~

0变1,1变0

~(1001 0101)= = 0110 1010

1.7.4 异或^

相同为0,不同为1

1000 0010

^   1100 1111

0100 1101

1.7.5 左移

Unsigned: 只有正数

没有符号位

1<< 2

1--->0000 0001  

高位丢弃,低位补0

补零:0000 0100  : 4

Signed:-1<<2

原码:1000 0001

反码:1111 1110

补码:1111 1111

符号位不变,高位丢弃,低位补0

补0:1111  1100  

反码:1000 0011

原码:1000 0100 :-4

1.7.6 右移

Unsigned:只有正数

没有符号位

>2
低位丢弃,高位补0

0000 0100

补零:0000 0001 :1

Signed: 正数+负数

有符号位

-4 >>2

符号位不变,低位丢弃,高位补1

-4 的原码:1000 0100

      反码:1111 1011

补码:1111 1100

补1:  1111 1111     1000 0000+1  = 1000 0001   = -1
 

相关推荐

  1. 运算符讲解

    2023-12-27 07:18:02       31 阅读
  2. 【保姆级讲解C语言中的运算符的优先级】

    2023-12-27 07:18:02       18 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-27 07:18:02       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-27 07:18:02       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-27 07:18:02       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-27 07:18:02       18 阅读

热门阅读

  1. 微信小程序实现一个天气预报应用程序

    2023-12-27 07:18:02       42 阅读
  2. C语言:冒泡排序算法的原理

    2023-12-27 07:18:02       27 阅读
  3. 【VS】如何把wpf项目打包成exe文件

    2023-12-27 07:18:02       28 阅读
  4. 数据库的连接池详解

    2023-12-27 07:18:02       32 阅读
  5. 单元测试实战

    2023-12-27 07:18:02       45 阅读
  6. WPF RelativeSource

    2023-12-27 07:18:02       39 阅读
  7. 10分钟了解nextTick,并实现简易版本的nextTick

    2023-12-27 07:18:02       33 阅读
  8. 【Python】FastAPI学习记录(二)

    2023-12-27 07:18:02       44 阅读
  9. 14.bash shell中的for/while/until循环

    2023-12-27 07:18:02       43 阅读
  10. zookeeper 面试

    2023-12-27 07:18:02       31 阅读
  11. node express简单微服务

    2023-12-27 07:18:02       36 阅读
  12. Nginx Unit 1.27.0 发布

    2023-12-27 07:18:02       41 阅读