NSInteger乘法:二进制表达式的操作数无效

时间:2014-07-29 17:08:02

标签: ios objective-c pointers nsinteger multiplying

我尝试将两个NSIntegers相乘,但Xcode给出了一个错误:

NSInteger singlePage = ((NSInteger)floor((scrollView.contentOffset.x * 2.0f + pageWidth) / (pageWidth * 2.0f)));
NSInteger page = singlePage * visiblePages;  

错误本身:

Invalid operands to binary expression ('NSInteger' (aka 'int') and 'NSInteger *' (aka 'int *'))  

NSInteger visiblePages已经定义并且正在传递给方法 我认为编译器认为*是指针符号而不是乘法符号。有没有其他方法可以将两个NSIntegers相乘?

1 个答案:

答案 0 :(得分:6)

您错误地定义了visiblePages。 替换

NSInteger *visiblePages;

NSInteger visiblePages;