第三章 基本算术运算:第一节 C 语言运算符和表达式
第三章 基本算术运算:第一节 C 语言运算符和表达式
在C语言中,运算符和表达式是编程的基础。熟练掌握这些内容,可以帮助我们在开发过程中进行有效的数据处理和逻辑控制。本节将介绍C语言中的基本运算符类型,运算符的优先级,以及如何构造表达式。
1. 运算符的分类
C语言中的运算符可以根据功能分为以下几类:
算术运算符:用于执行基本的数学操作。
- 加法
+
- 减法
-
- 乘法
*
- 除法
/
- 取模
%
(只能用于整数)
- 加法
赋值运算符:用于给变量赋值。
- 直接赋值
=
- 复合赋值
+=, -=, *=, /=, %=
- 直接赋值
比较运算符:用于比较两个值,返回布尔值(true或false)。
- 等于
==
- 不等于
!=
- 大于
>
- 小于
<
- 大于或等于
>=
- 小于或等于
<=
- 等于
逻辑运算符:用于进行布尔逻辑操作。
- 与
&&
(逻辑与) - 或
||
(逻辑或) - 非
!
(逻辑非)
- 与
位运算符:基于二进制位进行操作。
- 按位与
&
- 按位或
|
- 按位异或
^
- 按位取反
~
- 左移
<<
- 右移
>>
- 按位与
自增自减运算符:
- 自增
++
- 自减
--
- 自增
条件运算符(三元运算符):
? :
,用于构造条件表达式。逗号运算符:用于分隔表达式,以确保它们按顺序求值。
2. 运算符优先级
运算符有不同的优先级,优先级决定了在表达式中哪个运算符先执行。当多个运算符在同一表达式中使用时,优先级高的运算符会先执行。可以通过使用括号 ()
改变表达式的执行顺序。以下是部分运算符的优先级,从高到低:
- 括号
()
- 自增/自减
++
、--
(后缀) - 一元运算符
+
、-
、!
、~
、++
、--
(前缀) - 乘法、除法、取模
*
、/
、%
- 加法、减法
+
、-
- 比较运算符
<
、<=
、>
、>=
- 等于和不等于
==
、!=
- 逻辑与
&&
- 逻辑或
||
- 赋值
=
、+=
、-=
、*=
、/=
、%=
、<<=
、>>=
、&=
、^=
、|=
- 逗号
,
3. 构造表达式
表达式是由运算符和值(变量、常量、函数调用等)构成的一个计算单元。C语言的表达式求值会产生一个值,可以用于赋值或其他计算。例如:
int a = 5;
int b = 10;
int c = a + b * 2; // 由于乘法优先级高于加法,先计算 b * 2,再加 a
总之,掌握C语言的运算符和表达式有助于编写出高效和可读性强的代码。在实际编程中,合理使用括号来明确运算顺序是一个良好的编程习惯。