0

我正在尝试在我的应用程序中使用 DDMathParser,并且很难让它使用 % 符号作为百分比,而不是模数。

维基建议以下 -

% 符号通常被解释为模运算符。但是,DDMathParser.h 定义了一个编译时开关 (DD_INTERPRET_PERCENT_SIGN_AS_MOD),允许您将其更改为解释为百分比I

我在 DDMathParser.h 中添加了这个定义,但它没有奏效。表达式仍然以模数计算,这不是我想要的结果。

有没有人有这方面的经验,并且具体知道如何设置?

请指教

4

2 回答 2

1

您可以使用以下

[[DDMathOperatorSet defaultOperatorSet] setInterpretsPercentSignAsModulo:NO];
于 2015-09-13T13:23:09.810 回答
0

我已经能够解决这个问题。首先,您必须将其添加到您的代码中,如前所述:

[[DDMathOperatorSet defaultOperatorSet] setInterpretsPercentSignAsModulo:NO];

但是,您还需要修复 DDMathParser 源代码中的错误。我一直在使用最新可用的 ObjectiveC 版本的源代码,日期为 2015 年 11 月 10 日,来自此处:https ://github.com/davedelong/DDMathParser/releases/tag/objc ,并且该错误位于 DDMathOperator.m

它在哪里说:

return OPERATOR(DDMathOperatorPercent, @[@"%"], BINARY, 0, LEFT);

将其更改为:

return OPERATOR(DDMathOperatorPercent, @[@"%"], UNARY, 0, LEFT);

就是这样 - 之后百分比计算得很好。

于 2016-05-06T22:24:03.957 回答