第四章 运算符和表达式

运算符和表达式概念

  1. 通过运算符
  2. 操作符
    1. 单目:一个操作数
    2. 双目:两个
    3. 三目:三个(条件?:)
  3. 优先级:!>算术>关系>&&>||>条件>赋值>逗号
  4. 结合性

算术运算符

  1. 注意:%取模的两个操作数只能为整数
  2. 注意:前自增/前自减先后引用后计算(后的:先引用,后自增)

赋值运算符

  1. '='不是等于。是赋值
  2. 专业术语
    1. s数据对象:用于存储数据存储区域统称为数据对象
2. 左值:用于标识一个特定的数据对象的名字或表达式(等号左边)
    1. 特性:可修改;数据对象的标识符;不能为常量
3. 右值:(rvalue)是可赋值给左值的量

逻辑运算符

  1. 逻辑真和假(非0和0)
  2. !:非
  3. &&:与都为真才真
  4. ||:或。一个为真即可

位运算

  1. 按位与:&
  2. 按位或:|
  3. 取反:~
  4. 异或:^

应用

  1. 判断奇偶性
  2. 高低位互换
a=(a>>8)|(a<<8);
  1. 寄存器的置位
a=a|0x08;//置1
a=a|(1<<3);//相同功能
a=a&(~0x08);//取反第三位
a=a&(~(1<<3));

逗号运算符

  1. 将两个表达式连接起来
    1. 表达式1;表达式2
  2. 结合性:从右到左,先1后2
a=3;
b=a*2,a+=4;
  1. 整个表达式是表达式1的值

条件运算符(取最大值)

  1. 条件运算符通过问号"?"和冒号":"连接的表达式
    1. 表达式1?表达式2:表达式3
  2. 执行逻辑
    1. 如果表达式1的结果为真,则整个表达式结果为2的结果,否则为表达式3的结果
  3. 示例
printf("%d\n",3>4?3:4);
posted @ 2026-03-23 15:19  小离儿  阅读(8)  评论(0)    收藏  举报