NSString *formul=@"3^2";
NSExpression *e = [NSExpression expressionWithFormat:formul];
int result = [[e expressionValueWithObject:nil context:nil] intValue];
NSLog(@"formule:%d", result);
我正在尝试计算 (a+b)^2。
使用 ** 代替 ^
NSString *formul=@"3 ** 2";
NSExpression *e = [NSExpression expressionWithFormat:formul];
int result = [[e expressionValueWithObject:nil context:nil] intValue];
NSLog(@"formule:%d", result);
但要注意 Foundation 的幂函数是左关联的(这是错误的)。请参阅戴夫·德隆的帖子。
http://funwithobjc.tumblr.com/post/6196535272/parsing-mathematical-expressions http://funwithobjc.tumblr.com/post/6196535272/parsing-mathematical-expressions
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)