《表1 算符优先表:栈类模板在算术表达式求值算法中的应用》
任何一个表达式都是由运算数、运算符和界限符组成。通常运算数可以是常数,也可以是被声明为常量的标识符或已声明且初始化的变量或函数调用;运算符可以分为算术运算符、关系运算符和逻辑运算符等;基本界限符分为左右括号和表达式结束符等。这里仅讨论简单算术表达式中只包含乘方(符号为^)、乘、除、加、减5种运算符的情况。把运算符和界限符统称为算符,它们构成的集合命名为opset。包含加法、减法、乘法、除法及乘方运算的算术表达式求值规则是:(1)先计算括号内后计算括号外;(2)乘方运算符优先级高于乘除法运算符,然后计算加减法运算;(3)运算符优先级相同时从左到右顺序计算。算符优先法[1]就是根据这个运算优先规则来实现对表达式进行编译或解释的。基于以上基本运算规则,在运算过程中任意先后出现的2个算符C1和C2之间的优先关系至多是以下3种关系之一。如表1定义了这些算符之间的优先关系。
图表编号 | XD00192407500 严禁用于非法目的 |
---|---|
绘制时间 | 2021.02.18 |
作者 | 张静 |
绘制单位 | 河套学院 |
更多格式 | 高清、无水印(增值服务) |