C语言操作符

算术操作符

算术操作符用于执行基本的算术运算,如加法、减法、乘法和除法。C语言中的常见算术操作符包括:

  • +:加法操作符
  • -:减法操作符
  • *:乘法操作符
  • /:除法操作符
  • %:取模操作符(求余)
  • int a = 10;
    int b = 3;
    int sum = a + b;   // = 13
    int difference = a - b;   //  = 7
    int product = a * b;   // = 30
    int quotient = a / b;   //  = 3
    int remainder = a % b;   //  = 1

    关系操作符

  • 关系操作符用于比较两个值之间的关系,返回一个布尔值(true或false)。常见的关系操作符包括:

  • ==:判断是否相等
  • !=:不等于
  • >:大于
  • <:小于
  • >=:大于等于
  • <=:小于等于
  • int x = 5;
    int y = 3;
    if (x == y) 
    {
        // 执行操作
    }
    if (x != y) 
    {
        // 执行操作
    }
    if (x > y) 
    {
        // 执行操作
    }
    // 以此类推...

    逻辑操作符

    逻辑操作符用于组合多个条件,并返回一个布尔值。常见的逻辑操作符包括:

  • &&  逻辑与 (两边的条件都要满足)
  • ||  逻辑或 (满足任意一个条件)
  • !   逻辑非 (真的表达式变为假,假的表达式变为真)
  • int a = 5;
    int b = 3;
    if (a > 0 && b > 0) 
    {
        // 执行操作
    }
    if (a == 0 || b == 0) 
    {
        // 执行操作
    }
    if (!(a > b))
    {
        // 执行操作
    }

    在使用逻辑操作符的时候要注意短路问题

  • 对于逻辑与运算符&&,如果第一个操作数为假(即为0),那么整个表达式的结果已经确定为假,此时不会再计算第二个操作数,直接返回假。

  • && 逻辑与 因为a是假,所以后面判断就不在执行,因此后面的++没有执行

  • 对于逻辑或运算符||,如果第一个操作数为真(非0),那么整个表达式的结果已经确定为真,此时不会再计算第二个操作数,直接返回真。

  • || 逻辑或 因为a是真,所以后面判断就不在执行,因此后面的++没有执行
  • 位操作符

    位操作符用于对数据的二进制位进行操作。常见的位操作符包括:

  • &:按位与
  • 对应位都为1才为1
  • |:按位或
  • 对应位只要有1就是1
  • ^:按位异或
  • 对应位相同则结果为0,对应位不同则结果为1
  • ~:按位取反
  • 0变1,1变0
  • <<:左移 (左边去掉一位右边补0)
  • >>:右移 
  • 右移又分为算术右移和逻辑右移,这取决于环境
  • 算术右移:左边用原来的符号位补
  • 逻辑右移:左边用0补
  • (在vs2022中使用的是算术右移)
  • 其他操作符

    除了上述常见的操作符外,C语言还有其他一些特殊的操作符,比如:

  • 赋值操作符 =
  • 自增 ++ 和自减 -- 操作符
  • 条件操作符 ?: (三目操作符)
  • 成员选择操作符 .
  • 指针成员选择操作符 ->
  • int a = 5;
    a++;     // a = 6
    a--;     // a = 5
    
    int b = (a > 0) ? 10 : 20;  // 如果 a 大于 0,则 b 等于 10,否则等于 20
    
    struct Point
    {
        int x;
        int y;
    };
    
    struct Point p1;
    p1.x = 10;
    p1.y = 20;
  • sizeof是运算符 (数据类型或变量所占用的内存空间)

  • 逗号表达式 (最后一个代表结果)

  • 下标引用: [ ]

  • 函数调用: ( )

  • 总结

    操作符是C语言中非常重要的一部分,掌握好操作符的使用可以让我们更加高效地编写代码。在使用操作符时,务必要注意运算符优先级和结合性,以避免出现意外的结果。希望本篇博客能够帮助您更好地理解C语言中常见操作符的使用。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值