【发布时间】:2016-02-05 20:01:04
【问题描述】:
我正在编写解决算术表达式的代码,例如:4+3-2*6*(3+4/2)
为此,我需要将字符串中的运算符与以下优先级进行比较:
1. ( or )
2. * or /
3. + or -
谁能告诉我如何比较两个字符。因为它们的 ASCII 值不是我想要的顺序!
【问题讨论】:
-
为什么不自己做比较函数呢?
-
是的,我可以做到这一点,但我正在寻找是否有其他有效的方法来做到这一点!就像我可以为运算符定义我的 ascii 值一样,我知道这是不可能的,但类似于..
-
也.. 例如。我在 que 中给出的算术表达式。只是一个简单的版本。更复杂的算术表达式可能涉及其他抽象运算符,例如'$'、'%'、'^'、'@'、'&' 等,它们的运算定义在两个整数上并且优先于其他运算符。你不能只为此创建一个函数!编写该函数需要 100 行 ..(考虑从 n 个运算符中选择 3 个运算符进行比较)..