嗯,很多书上都会介绍类似的方法。其实都很经典,不是什么傻方法。
不知道楼主自己查没查。如果是有兴趣最好是自己学习,比别人讲的更具有实践性。
我说点个人经验吧,反正我也没仔细研究过这方面的东西,仅供参考。
楼主就用 C 语言,或者 C++ 写就可以。这类功能明显面向过程,使用高级一些的语言,分析表达式也没什么简单方法(除非有些自带了相关的库)。
这里会用的错误处理,C 语言里普遍是用 longjmp 实现的。C++ 里有异常的方法,实现起来会更方便一些。
算术表达式分析比较通用的技巧之一应该是构建表达式树。
但相对简单的一点的表达式也有简单一点的方法,以前我有个同学交作业要写类似的东西,我帮他写了个有限状态机的分析器。我自己感觉这个方法是可扩展性不太强,但错误处理做的比较漂亮。
总之我不太爱写这类代码,工作量比较大。做完了成就感也不是很强。