如何在objective-c / cocoa touch中进行模运算?

我有两个CGFloat值,并且想要计算模数结果。 或换句话说:如果valueA尽可能地放在valueB中,我想知道剩下的是什么。

所以我只是试着:

CGFloat moduloResult = valueB % valueA; 

编译器抱怨%,并告诉我:“无效的操作数到二进制%”。 任何想法?

%是intlong ,不是floatdouble

您可以使用<math.h> fmod()fmodf()来代替。

CGFloat的发明者提出的更好的是<tgmath.h>

如果我记得正确的modulo需要2个整数作为input,所以你需要这样的东西:

 CGFloat moduloResult = (float)((int)valueB % (int)valueA); 

假设valueB和valueA都是浮点数