변수 Player1Visits
이 있는데 이는 int
으로 선언되었습니다.경고없이 두 개의 정수를 비교하는 방법은 무엇입니까?
Player1Visits == 1
을 사용하여 1과 비교하려고하면 정수와 포인터 사이에 경고가 표시됩니다. 다른 유형을 사용해야합니까?
변수 Player1Visits
이 있는데 이는 int
으로 선언되었습니다.경고없이 두 개의 정수를 비교하는 방법은 무엇입니까?
Player1Visits == 1
을 사용하여 1과 비교하려고하면 정수와 포인터 사이에 경고가 표시됩니다. 다른 유형을 사용해야합니까?
비교하려면 의미하지 않는다 : 나는로 선언 된 것을 Player1Visits 한 번 확인 할
*Player1Visits == 1
감사합니다 thats 그것은 객관적인 c를 사용하고 있습니다. – Rupert
; 그 컴파일러 경고를 받고 있다면 거의 확실하게 int
이 아닙니다. 가능성이 가능성이 @aronchick가 Player1Visits는 int*
(int 형에 대한 포인터)이고, 말을 포함, 그래서 당신은 사용하여 비교하려는 :
*Player1Visits == 1
또 다른 가능성은 Player1Visits가 int
속성 객체의 일종이다 당신은 당신이 원하는 속성 이름을 알아낼 호출 할, (이 마지막을
[Player1Visits someIntProperty] == 1
당신이 목표 - C를, (나는 믿는다) A-무리없는 가정의 선택을 주어 사용하고있는 가정 IDE).
당신은 이것을 int
으로 선언하지 않았습니다. 컴파일러의 경고는 그것을 알려줍니다. 아마도 이것을 NSInteger *Player1Visits;
또는 int *Player1Visits;
으로 선언했을 것입니다.
이렇게 선언 한 경우 *
을 제거하십시오.
당신이 말하는 언어가 무엇인지 알고 있으면 그것이 C 일 수 있다고 생각하는 것이 중요합니다. 질문에 태그를 답니다. 또한 선언을 복사하면 Player1Visits가 실제로 포인터로 선언 된 것처럼 들리므로 도움이 될 것입니다. –
비교할 때'포인터 '를 사용하는 대신'int *'대신 'int'로 유형을 변경하는 것이 좋습니다. 나는 당신이 프로그램 코드에서 int에 대한 포인터를 원한다고 생각하지 않는다. 원하는 경우 컴파일러 경고를 이해할 수 있습니다. –