如何在objective-c / cocoa touch中进行模运算?
我有两个CGFloat值,并且想要计算模数结果。 或换句话说:如果valueA尽可能地放在valueB中,我想知道剩下的是什么。
所以我只是试着:
CGFloat moduloResult = valueB % valueA;
编译器抱怨%,并告诉我:“无效的操作数到二进制%”。 任何想法?
%是int
或long
,不是float
或double
。
您可以使用<math.h>
fmod()
或fmodf()
来代替。
CGFloat的发明者提出的更好的是<tgmath.h>
。
如果我记得正确的modulo需要2个整数作为input,所以你需要这样的东西:
CGFloat moduloResult = (float)((int)valueB % (int)valueA);
假设valueB和valueA都是浮点数