반응형
컴파일 오류: 스위치, "이전에 예상된 식"
본론으로 들어가자면, 저는 제 문제를 상당히 자기 설명적이기 때문에 다시 만들었습니다.
오류 없이 다음을 준수됩니다.
switch (n) {
case 1:
NSLog(@"");
NSString *aStr;
break;
default:
break;
}
오류가 발생하여 컴파일되고 NSLog()만 누락됩니다.
switch (n) {
case 1:
NSString *aStr;
break;
default:
break;
}
컴파일 시 "'NSString' 앞에 예상되는 식"이라는 오류가 발생합니다.
내가 뭘 빠트렸나요?
일반적인 C에서는 두 경우 모두 괄호로 묶어야 합니다.이것이 당신의 문제를 해결할 수 있을 것 같습니다.
case 1:
{
NSLog(@"");
NSString *aStr;
break;
}
이 문제를 해결하는 또 다른 방법은 위의 작업 예제에서 수행한 것처럼 사례 레이블과 첫 번째 선언 사이에 설명문을 넣는 것입니다.자세한 내용은 댓글 및 Quinn Taylor의 답변을 참조하십시오.
변수를 다음에서 첫 번째 문으로 선언할 수 없습니다.case
괄호 없이, 그리고 C 기반 언어의 많은 다른 맥락에서.자세한 내용은 스위치 문 내부의 변수 선언을 참조하십시오.
case 0: {
Loading my nib file;
break;
}
case 1: {
Loading another nib file;
break;
}
Note that if you don't have an assignment (x = y) right after the case it won't be a problem. For example:
언급URL : https://stackoverflow.com/questions/2036819/compile-error-with-switch-expected-expression-before
반응형
'it-source' 카테고리의 다른 글
PostgreSQL - 따옴표 없이 구문 쿼리 (0) | 2023.08.09 |
---|---|
JS/ES6: 정의되지 않은 파괴 (0) | 2023.08.04 |
c에 있는 파일에 구조체 쓰기 (0) | 2023.08.04 |
현재 사용자 표준시를 c#로 가져오는 방법 (0) | 2023.08.04 |
'뉴턴소프트''Json...'은(는) 'Blend\Newtonsoft'에 모두 있습니다.Json.dll' 및 '솔루션\패키지\...\ (0) | 2023.08.04 |