"a+b*((e+(c-d)*f)/h)"一个运算表达式的字符串,怎么分别获取到a,b,c,d,e,f,h变量然后赋值

日期:2012-01-11 01:25:41 人气:1

"a+b*((e+(c-d)*f)/h)"一个运算表达式的字符串,怎么分别获取到a,b,c,d,e,f,h变量然后赋值

没有明白你的具体意思,估计是表达式求值吧。如果是表达式求值,明显使用堆栈。 建立一个堆栈 将包括括号以及运算符号的所有ASCII码依次按规则压入堆栈 规则如下: 从右向左依次开始压入,碰到字符和运算符和")"不管,当碰到"("时,弹栈直到弹出第一个'")",然后将弹出的内容求值,继续依照上述规则压栈。 一直压栈直到最左边的元素时,弹栈,求值。 如果你是要从"a+b*((e+(c-d)*f)/h)"这
    A+
热门评论