c有没有什么方法把比如"25*10+1"的字符串计算出来?

2019-12-22 13:44发布

现在解释器有这个功能,但是我是用C工程开发,需要这个字符串计算机功能
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
sniper.q
1楼-- · 2019-12-22 14:32
字符串查找运算符分隔后计算不难吧
3050311118
2楼-- · 2019-12-22 17:37
sniper.q 发表于 2017-10-9 19:33
字符串查找运算符分隔后计算不难吧

还有括号等先后顺序
3050311118
3楼-- · 2019-12-22 19:47
就加减乘除可以了,字符串长度可以随意
rmdyj
4楼-- · 2019-12-23 00:19
自己写个解释器.
3050311118
5楼-- · 2019-12-23 01:01
 精彩回答 2  元偷偷看……
atommann
6楼-- · 2019-12-23 06:29
本帖最后由 atommann 于 2017-10-9 19:59 编辑

可以用 https://www.gnu.org/software/libmatheval/manual/libmatheval.html

能否把字符串表达成 RPN 方式? 然后 C 中应该有 RPN 库,比如 25 10 * 1 +
如果可以表达成 s-expression 也能用 http://sexpr.sourceforge.net/
(+ (* 25 10) 1)

有人说直接用 Lua 的库
有人说有 https://github.com/codeplea/tinyexpr
有人说用 http://expreval.sourceforge.net/

一周热门 更多>