在之前的章节中,我们使用到了+
运算符,用于两个数据对象的相加。
这一节中,我们将继续认识更多的运算符,并讨论运算符和数据对象是如何相互作用的。
1.1 什么是表达式?
运算符往往需要与运算对象一起使用才有意义。例如:
其中,5与10是运算对象
,+为运算符
。
在C语言中,一个或多个运算对象与零个或多个运算符组成表达式。下面几个都是表达式:
如上的例子可以看出,100也是一个正确的表达式,虽然它只有运算对象而没有运算符。
运算符与运算对象进行运算操作必然产生一个结果,因此每个表达式都有一个结果。例如上面的表达式5 + 10
的结果为15。
值15被传入printf后,在控制台上打印出字符15。
表达式后面加上分号构成表达式语句。
C语言中表达式不能单独存在,必须以表达式语句的形式存在。
那么下面的表达式5+10呢?它为什么可以没有分号。
因为5 + 10
是一个子表达式,函数名加上括号运算符,构成了一个函数调用表达式。 所以,5 + 10
为函数调用表达式的子表达式,而函数调用表达式后面加了分号了。
当然函数调用表达式也有一个表达式结果,这个结果就是函数的返回值了。
+
为加法运算符,它左右边各需要一个运算对象,构成加法运算符表达式
。
表达式结果:加法表达式的结果为左右表达式结果相加。
-
为减法运算符,它左右边各需要一个运算对象,构成减法运算符表达式
。
表达式结果:减法表达式的结果为左右表达式结果相减。
+
用于标明一个表达式的正负 -
用于改变一个表达式的正负。
与加减运算符不同的是,它仅需要在运算符右边有一个运算对象。
+
号表达式的结果为右边运算对象的值。
-
号表达式的结果为右边运算对象值的相反数。
用于改变表达式的正负:
请注意:+不能改变表达式的正负,请使用负负得正。