本文共 848 字,大约阅读时间需要 2 分钟。
第1章分析计算机与C语言的关系时曾提出:C语言用代数式命令运算器进行各种运算。准确地说,C语言用表达式命令计算机进行各种操作。“代数式”仅是表达式的一种。
C语言又称表达式语言,可见表达式在C语言中的重要作用。
表达式是用操作符把操作数连接起来的式子,如表达式3+a中的“+”就是操作符,3和a就是操作数(这里的a应理解为一个变量)。
C语言表达式最重要的特征是每个表达式都有一个确定的值及类型(由上一章可知,只有数据类型确定了,相关数据的实际值才能确定)。
数学上求值时遵循类似“先乘除后加减;只有乘除或加减时,谁在左边先算谁” 的规则。规则中的前半句有关操作符的优先级,后半句有关操作符的结合性。表达式求值时各操作符的“执行”次序由操作符的优先级、结合性和序列点决定。
种类繁多的操作符使得C语言不仅灵活,而且功能强大。C语言中有许多常见的操作符如+、-、*、>、=等,也有许多专用于编程语言的操作符如++、--、%等。全面理解每个操作符的功能、优先级、结合性是学好C语言表达式的关键。
学习操作符时需注意方法。以记忆操作符的优先级为例,刚接触某操作符时可以只记它大概(相对)的级别(是高?是中?还是低?)。思考是识记的前提,为什么这个操作符的优先级比那个操作符的高呢?
准确理解操作符的功能有一定的难度,学习时需结合计算机实际的“执行”过程思考。如C语言中操作符=的作用是“赋值”而并非“等于”;3/2的值是1,而3.0/2的值是1.5等等。
C语言中有些表达式的样子可能比较独特,如n > 5 && i % 3 = = 0、a=b=23等,但是,只要注意了优先级、结合性、序列点和数据类型四个要素,再独特、再复杂的表达式也不会成为学习的障碍。
表达式求值的过程实际上就是计算机执行表达式的过程。实际问题用计算机解决的过程最终表现为计算机对一系列的C语言表达式求值的过程,因此,只有精通了C语言表达式,才能熟练地用表达式“指挥”计算机解决实际问题。从这个角度看,编程就是写表达式。
转载地址:http://kcdti.baihongyu.com/