您现在的位置: 首页 > 网站导航收录 > 百科知识百科知识
C语言课设想写一个简易计算器,但是在运算符优先级这里卡了两天,请问该用什么方法解决运算符优先级?
括号,表达式,算式C语言课设想写一个简易计算器,但是在运算符优先级这里卡了两天,请问该用什么方法解决运算符优先级?
发布时间:2019-02-08加入收藏来源:互联网点击:
回答于 2019-09-11 08:43:50
做这个得学编译原理,看龙书。第一步:设计词法分析器解析算术表达式,返回词法单元。第二步:设计文法的时候加入运算符优先级的考虑,消除文法二义性。第三步:优化文法,消除左递归。第四步:在文法上加入语义属性和语义规则。第五步:建立预测分析表,通过自顶向下的方式解析表达式,构建语法分析树,通过属性文法,语义规则生成三地址代码,或者直接计算。
回答于 2019-09-11 08:43:50
你需要学习编译原理及实践了
回答于 2019-09-11 08:43:50
给提供个关键词 逆波兰算法。
回答于 2019-09-11 08:43:50
用括号
回答于 2019-09-11 08:43:50
计算器看起来很简单,但真正去做就会发现没那么容易的。字符处理,逻辑判断,缓存调度,等等,没什么好办法。
下一篇:返回列表
相关链接 |
||
网友回复(共有 0 条回复) |