• C语言操作运算符


     

    算术运算符

    • +   -   *   /

           均可作用于整数或浮点数。

    • x   /   y

       若想得到一个浮点数,则至少第一运算符(x)必须为浮点数。

       例:1 / 2 = 0;1.0 / 2 = 0.5;

    • x   %   y

       1)只可作用于整数;

         2)求余的结果按 x % y = x - x / y * y ,则余数的符号取决于第一运算符的结果。

        例:11 % 2 = 1;-11 % 2 = -1;

     

    移位运算符

    • x  <<   n

        将x的各个二进位按顺序往左移动n位,移出的位舍弃,右侧空出位补 0。

    • x  >>   n

        1)逻辑移位:将x的各个二进位按顺序往右移动n位,左边补0,右边丢弃。

          2)算术移位:将x的各个二进位按顺序往右移动n位,左边补原值的符号位,右边丢弃。

        

       注:移动负数位为未定义行为。

    位操作符

    • x  &  y

      1)x 与 y 都为真为真,一假为假。

      2)1 & x = x ;0 & x = 0

    • x  |  y

      1)x 与 y 都为假为假,一真为真。

      2)1 | x = 1;0 | x = x

    • x ^ y

        1)x,y相同为假,相异为真。

      2)1 ^ 1 = 0;1 ^ 0 = 1

    • ~ x

      1)取反

      2) ~110 => 001

    赋值运算符

    • =
    int x = 0;
    x = 10;
    • 复合赋值符
    +=   -=   *=   /=   %=   >>=   <<=   &=   |=   ^=

      x += 10;    =>   x = x+ 10;

    单目运算符

    •  -(负号)   +(正号)   &(取地址)
    • ++  --

      1)前置  ++/--

      2)后置  ++/--

    • *(解引用 / 简介访问)
    • (类型)x   (强制类型转换)
    •  sizeof() (操作数的类型长度,以字节为单位

    关系操作符

    <   <=   >   =>   !=   ==  
    • = 与 == 不一样,一个为赋值操作符,一个为关系操作符

    逻辑操作符

    • &&(逻辑与)
    • ||(逻辑或)
    • !(逻辑非)

    条件操作符

    • m  ?  x  :  y  

    逗号操作符

    • x, y, z,……

    下标引用、函数调用和结构成员

    • [ ]
    • ( )
    • .   ->
  • 相关阅读:
    正则表达式的单行模式和多行模式
    js 正则匹配(去掉html标签)
    ES6中set和map的区别
    回调函数的使用场合
    javascript逻辑运算符“||”和“&&”
    [bzoj3210]花神的浇花集会
    [bzoj2438][中山市选2011]杀人游戏
    [bzoj2743][HEOI2012]采花
    [luoguP3729]曼哈顿计划EX
    [bzoj4850][Jsoi2016]灯塔
  • 原文地址:https://www.cnblogs.com/lkimprove/p/10162744.html
Copyright © 2020-2023  润新知