在此之前,我们多次用到了术语表达式和语句,现在我们需要深刻的理解他们了,语句是组成C的基本单位,并且大多数语句由表达式构成。所以,我们有必要对表达式进一步学习。
表达式
表达式(expression)是由运算符和操作数组合构成的(回忆一下,操作数是运算符操作的对象)。最简单的表达式即一个单独的操作数,以此作为基础可以建立复杂的表达式,比如下面这些:
3+2
a=(2+b/3)/5
x=i++
m=2*5
正如您看到的一样,操作数可以是常量,也可以是变量,亦可以是他们的组合。一些表达式是多个较小的表达式的组合,这些小的表达式称为子表达式(subexpression)。
每个表达式都有一个值,C中一个重要的属性是每一个C表达式都有一个值。为了得到这个值,您可以按照运算符优先级描述的顺序来完成运算。我们所列出的前几个表达式的值都很明显,但是有=的表达式的值是什么呢?那些表达式与=左边的变量取得的值相同。所以,表达式m=2*5作为一个表达式,其整体的值为10。
语句
语句(statement)是构造程序的基本部分。程序(program)是一系列带有某种必须的标点语句集合。一个语句是一条完整的计算机指令。在C中,语句用结束处的一个分号标示。
例如:c=3这只是一个表达式(它可能是一个较大语句的一个部分),而c=3;则是一个语句。
想必您应该已经看到了,没错,表达式后面加一个分号即构成了一条C语句(它们被称为表达式语句)。所以,C不反对像下面的语句:
1; 2+2;
但这样的语句对程序没有任何意义。
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程