三、C语言常用运算符

1、算术运算符

|----|---------------|
| 符号 | 说明 |
| + | 加号 |
| - | 减号 |
| * | 乘号 |
| / | 除号 |
| % | 取余符号,相除以后余数是几 |
| ++ | 自增运算符,整数值增加 1 |
| -- | 自减运算符,整数值减少1 |

2、关系运算符

|-----|---------------------------------|
| 符号 | 说明 |
| == | 检查两个操作数的值是否相等,如果相等则条件为真。 |
| != | 检查两个操作数的值是否相等,如果不相等则条件为真 |
| > | 检查左操作数的值是否大于右操作数的值,如果是则条件为真。 |
| < | 检查左操作数的值是否小于右操作数的值,如果是则条件为真。 |
| >= | 检查左操作数的值是否大于或等于右操作数的值,如果是则条件为真。 |
| <= | 检查左操作数的值是否小于或等于右操作数的值,如果是则条件为真。 |

3、逻辑运算符

|------|--------------------------------------------|
| 符号 | 说明 |
| && | 称为逻辑与运算符。如果两个操作数都非零,则条件为真。 |
| || | 称为逻辑或运算符。如果两个操作数中有任意一个非零,则条件为真。 |
| ! | 称为逻辑非运算符。用来逆转操作数的逻辑状态。如果条件为真则逻辑 非运算符将使其为假。 |

4、位运算符

|-----------|-------------------------------------------------------------------------------|
| 符号 | 描述 |
| & (按位与) | 对两个操作数的每一位执行逻辑与操作, 如果两个相应的位都位1,则结果为1,否则为0。 |
| | (按位或) | 对两个操作数的每一位执行逻辑或操作, 如果两个相应的位都为0,则结果为0,否则为1。 |
| ^ (按位异或) | 多两个操作数的每一位执行逻辑异或操作, 如果两个相应的位值相同,则结果为0,否则记过为1。 0^0=0; 0^1=1; 1^0=1; 1^1=0; |
| ~ (按位取反) | 对操作数的每一位执行逻辑取反操作, 即每一位0变为1,1变位0。 |
| << | 将操作数的所有位向右移动指定的位数。 二进制左移运算符:将一个运算对象的各二进制位全部左移若干位,左边的二进制位丢弃,右边补0。 |
| >> | 将操作数的所有位向右移动指定的位数。 二进制右移运算符。将一个数的各二进制位全部右移若干位,正数左补 0,负数左补 1,右边丢弃。 |

5、赋值运算符

|-------|----------------------------------|
| 符号 | 描述 |
| = | 简单的赋值运算符,把右边操作数的赋值给左边操作数 |
| += | 加且赋值运算符,把右边操作数加上左边操作数的结果赋值给左边操作数 |
| -= | 减且赋值运算符,左边操作数减去右边操作数的结果赋值给左边操作数 |
| *= | 乘且运算符。(C *= A; 相当于 C = C * A;) |
| /= | 除且赋值运算符 |
| %= | 取余(求模)且赋值运算符 |
| <<= | 左移且赋值运算符 |
| >>= | 右移且赋值运算符 |
| &= | 按位与且赋值运算符 |
| ^= | 按位异或且赋值运算符 |
| |= | 按位或且赋值运算符 |

6、其他运算符

|----------|---------|
| 符号 | 描述 |
| sizeof() | 返回变量的大小 |
| & | 返回变量的地址 |
| * | 指向一个变量 |
| ? : | 条件表达式 |

7、运算符的优先级

相关推荐
huangyuchi.2 分钟前
【Linux网络】Socket编程实战,基于UDP协议的Dict Server
linux·网络·c++·udp·c·socket
dlwlrma_5169 小时前
NUCLEO-G0B1RE STM32G0B1RET6的学习(1)——STM32CubeIDE的安装、新建工程和配置硬件SPI
stm32
三品吉他手会点灯9 小时前
stm32f103学习笔记-16-RCC(第2节)-讲解系统时钟配置函数SetSysClockTo72()
笔记·stm32·单片机·嵌入式硬件·学习
李宥小哥13 小时前
创建型设计模式1
stm32·嵌入式硬件·设计模式
d111111111d14 小时前
STM32外设学习-ADC模数转换器(代码部分)四个模块,光敏,热敏,电位,反射式红外。
笔记·stm32·单片机·嵌入式硬件·学习
三品吉他手会点灯15 小时前
STM32F103学习笔记-16-RCC(第3节)-使用HSE配置系统时钟并使用MCO输出监控系统时钟
c语言·笔记·stm32·单片机·嵌入式硬件·学习
straw_hat.15 小时前
32HAL——万年历
stm32·单片机·学习
敬往事一杯酒哈16 小时前
第3节 STM32 串口通信
stm32·单片机·嵌入式硬件
XH1.17 小时前
学习RT-thread(项目一:基于RT-thread的multi_button控制灯闪烁)
stm32·单片机·学习
Jerry丶Li17 小时前
二十五、STM32的DMA(数据转运)
stm32·单片机·嵌入式硬件