iphone - NSString 到等式

标签 iphone objective-c

我正在使用 Objective-C,我正在尝试设置一个方程,该方程存储在 NSString 中以求值并存储在 NSInteger 中。

类似于以下内容:

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

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

最佳答案

您想要出色的、惊人的和美妙的 GCMathParser,可在 apptree.net 上获得(免费!):http://apptree.net/parser.htm它完全符合您的要求,甚至允许您进行变量替换(3x+42,使用 x = 7 进行评估)。它甚至支持数学函数,如 sin()、cos()、tan()、它们的反函数、dtor()、log() 等。

编辑很久以后...

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

关于iphone - NSString 到等式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1501949/

相关文章:

iphone - App Store 中显示的语言错误!

iPhone GLSL动态分支问题

iphone - iPad:分割 View 不旋转

ios - 如何将背景图像应用于导航栏

objective-c - 应用内购买不再有效

ios - 我的申请会在一年后消失吗?

ios - 调用 [tableView reloadData] 时 TableView 未重新加载

objective-c - 你什么时候想在辅助线程上运行 NSURLConnection ?

iphone - 在您的应用程序中打开附件时如何传递发件人电子邮件地址

ios - 如何在实例方法中访问类方法变量或对两者使用公共(public)变量?