Obj-c 表达式错误 - 二进制表达式的无效操作数('CGFloat'(又名“double”))

Obj-c Expression error - Invalid operands to binary expression ('CGFloat' (aka 'double’))

我已经复习过关于堆栈溢出的相同类型的问题,但这是不同的。在这里我想用整数对双精度值取模。编译器给出以下错误。

我需要获取滚动视图内容偏移量的模值。为此,我写了下面的代码,但它给我错误“二进制表达式的无效操作数('CGFloat'(又名'double'))”。有哪位大侠帮忙啊

scrollView.contentOffset.x % 1024.00;

提前致谢。

你应该使用 fmod()Manpage.

CGFloat remainder = fmod(scrollView.contentOffset.x, 1024.00);

模运算符 % 仅适用于整数。

您可以将值转换为 int

(int)scrollView.contentOffset.x % 1024;