NSInteger 곱셈:이진 표현식에 대한 잘못된 피연산자
-
21-12-2019 - |
문제
두 개의 NSInteger를 곱하려고 하는데 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는 이미 정의되어 메소드에 전달 중입니다.
내 생각에 컴파일러는 *가 곱셈 기호가 아니라 포인터 기호라고 생각하는 것 같습니다.두 개의 NSInteger를 곱하는 다른 방법이 있습니까?
해결책
당신이 정의한 visiblePages
틀리게.바꾸다
NSInteger *visiblePages;
~와 함께
NSInteger visiblePages;
제휴하지 않습니다 StackOverflow