배열에서 int 값을 설정하는 방법은 무엇입니까? 은 그 같은 시도 :NSarray에서 정수 값 설정
이int counter;
counter = signArr[4];
작동하지 않는, 내가 잘못을 얻을 "변환을 정수하는 호환되지 않는 포인터 유형 'ID'의 매개 변수에 'INT'를 보내"도움말 :
에 대한감사
배열에서 int 값을 설정하는 방법은 무엇입니까? 은 그 같은 시도 :NSarray에서 정수 값 설정
이int counter;
counter = signArr[4];
작동하지 않는, 내가 잘못을 얻을 "변환을 정수하는 호환되지 않는 포인터 유형 'ID'의 매개 변수에 'INT'를 보내"도움말 :
에 대한감사
귀하의 의견을 통해 숫자가 NSNumber
인스턴스에 박스로 묶여 있다고 추측 할 수 있습니다. 우리는 로그 문을 테스트 할 수 있습니다 (또는 디버거에서) : 그것이 NSNumber
인스턴스 인 경우
NSLog(@"The class is %@", NSStringFromClass[signArr[4] class]));
하고, 제공에 대한 방법을보고 우리는 당신이 찾고있는 무엇을 제공 할 integerValue
을 볼 수 있습니다 .
오류 당신은 당신이 int
를 원하는하지만 당신은 id
을 가지고
당신을 알려줍니다 유형 'ID'의 매개 변수에 'INT'를 보내 변환을 정수로
호환되지 않는 포인터를 보았다. 당신은
id
이 ObjC에서 사용되는 일반적인 포인터 타입이라는 것을 알아야합니다 (만약 당신이 가서 the documentation을 더 읽을 필요가 없다면). 그래서 당신은 객체 포인터에서 원시 int로 변환하는 방법을 찾아야합니다. 첫 번째 단계는 객체 클래스 유형이 무엇인지 알아 내고 문서를 검사하여 목표를 달성하는 데 도움이되는 것이 무엇인지 확인하는 것입니다.
배열의 개체는 무엇입니까? 어떤 방법을 제공합니까? – Wain
"singarr [4]"객체는 내 DB에서 오는 번호를 보유합니다. 즉, singarr [4] = 6 또는 다른 숫자 – user3780061
배열은 int와 같은 프리미티브를 포함 할 수 없습니다. 배열에 숫자가 들어 있으면 NSNumber 객체 일 것이므로 intValue를 사용하여 변환해야합니다. – rdelmar