目录
一、运算符
1、算术运算符
一元 | 二元 | |
加法类 | 乘法类 | |
+正号 -负号 | +加法运算符 -减法运算符 | *乘法运算符 /除法运算符 %取模运算符(求余) |
当进行除法运算时,若两个操作数都是整数,运算符/会丢掉分数部分来截取结果。
当进行取模运算时,操作数必须是整数。
一元运算符是右结合的,例如:-+i等价于-(+i)
2、赋值运算符=:右结合。例如:i=j=k=0等价于:i=(j=(k=0))
3、复合赋值运算符:+=,-=,*=,/=,%=
举例:i+=1等价于i=i+1
4、自增和自减运算符:++和--
自增自减运算符既可作前缀,也可作后缀。
i=1;
printf("%d\n",++i); //i自增为2,打印结果为2
printf("%d\n",i++); //先打印,结果为1,然后i自增为2
5、关系运算符
符号 | 含义 |
< | 小于 |
> | 大于 |
<= | 小于等于 |
>= | 大于等于 |
6、判等运算符
符号 | 含义 |
== | 等于 |
!= | 不等于 |
7、逻辑运算符
符号 | 含义 |
&& | 逻辑与 |
|| | 逻辑或 |
! | 逻辑非 |
逻辑运算符所产生的结果是0或1。
二、表达式
在C语言中,表达式是由常量、变量、运算符以及函数调用等组成的,一般用于计算一个值。
1、常量表达式
42
2、变量表达式
int x = 10;
x // 这是一个表达式,其值为变量x的内容
3、算术表达式
x + y
(a * b) / c
x % 3 // 取模运算
4、关系表达式
a > b
x == y
z != 10
5、逻辑表达式
!flag
a && b
x || y
6、赋值表达式
x = 5
a += b // 等价于 a = a + b
7、函数调用表达式
printf("Hello, world!\n")
max(a, b) // 假设max是一个返回两个整数中较大值的函数
8、条件表达式
(a > b) ? a : b // 如果a大于b,则表达式值为a,否则为b
9、复合表达式:复合表达式是由多个子表达式通过运算符连接起来的。例如:
a = (b + c) * d - e