被BS了,收集关于计算器语法树和表达式的内容。
1、http://blog.csdn.net/dog250/article/details/7059641 博主也是非科班出身,没有什么深奥的道理,但至少是我看到第一个真的能跑通的程序。基于C。具体真正求值的部分我留言了,引用如下“补充一下,如果要真正计算出结果的话,只需维护一个全局的栈。然后在print_result()函数里,后序获得节点。根据节点的tag是否数字判断。如果是数字,入栈。如果是操作符,pop一次得到右操作数,再pop一次得到左操作数。然后根据操作符将两数作相应运算。”
2、http://blog.csdn.net/fx1ts/article/details/6917536 使用C++实现。还没测试。