NSString到方程式 [英] NSString to equation

查看:91
本文介绍了NSString到方程式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用Objective-C,我正在尝试设置存储在 NSString 中的等式,以便进行评估并存储在 NSInteger中

I am using Objective-C and I am trying to set an equation that is stored in an NSString to be evaluated and stored in an NSInteger.

类似于以下内容:

equation = [[NSString alloc] initWithString:@"1+5*6"];

然后将其评估为31并将其存储到 NSInteger 。任何想法如何做到这一点?

and then evaluate that to become 31 and store it into an NSInteger. any ideas how to do this?

推荐答案

你想要美妙,神奇,美妙的GCMathParser,(免费!) apptree.net: http://apptree.net/parser.htm 它完全符合您的要求,甚至允许你做变量替换(3x + 42,用x = 7评估)。它甚至支持数学函数,如sin(),cos(),tan(),它们的反转,dtor(),log(),....

You want the wonderful, amazing, and fabulous GCMathParser, available (FOR FREE!) on apptree.net: http://apptree.net/parser.htm It does exactly what you're asking, and even allows you to do variable substitutions (3x+42, evaluate with x = 7). It even has support for mathematical functions like sin(), cos(), tan(), their inverses, dtor(), log(), ....

很久以后编辑 ......

edit a long time later...

虽然GCMathParser非常棒,但它有一个不可扩展的缺陷。因此,如果您需要一个本身不支持的功能,那就太糟糕了。所以我决定对此做些什么,并想出了一个完全原生的数学解析器和评估器: http:// github。 com / davedelong / DDMathParser

While GCMathParser is pretty awesome, it has the flaw of not being extensible. So if you need a function that it doesn't natively support, then too bad. So I decided to do something about it, and came up with an entirely native math parser and evaluator: http://github.com/davedelong/DDMathParser

这篇关于NSString到方程式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆