如何在DDMathParser中设置%模式开关

时间:2015-06-15 23:45:15

标签: ios ddmathparser

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

维基建议如下 -

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

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

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

请告知

2 个答案:

答案 0 :(得分:1)

您可以使用以下

[[DDMathOperatorSet defaultOperatorSet] setInterpretsPercentSignAsModulo:NO];

答案 1 :(得分:0)

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

[[DDMathOperatorSet defaultOperatorSet] setInterpretsPercentSignAsModulo:NO];

然后,您还需要修复DDMathParser源代码中的错误。我一直在使用源于2015年11月10日的源代码的最新ObjectiveC版本:https://github.com/davedelong/DDMathParser/releases/tag/objc,错误发生在DDMathOperator.m

它说:

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

将其更改为:

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

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