0
나는 왜 이것을 할 수 없는지 잘 모르겠습니다. 누군가 컴파일 오류를 해결하는 방법에 대해 설명 할 수 있습니까? 나는 C가 처음이다. 자바에서왔다.C에서 스위치 상태와 함께 #define 사용
오류 : 예상 ':'또는 '...'앞에 ';' 세미콜론을두고 정의합니다 사용하는 경우 @PSkocik 및 @BLUEPIXY에 의해 위에서 언급 한 바와 같이
: 미래의 시청자에 대한
#define NORTH 1;
int main (void){
switch (functionCallThatReturnsAnInt()){
case NORTH : //compile time error here
printf("NORTH");
break;
case 2 : // no compile time error
printf("2");
break;
//removed rest to reduce clutter
}
}
int functionCallThatReturnsAnInt(void){
return NORTH;
}
'#DEFINE NORTH 1;'->'#DEFINE NORTH 1' – BLUEPIXY
'#DEFINE NORTH 1'. 세미콜론이 없습니다. – PSkocik
'# define'은 텍스트 대체를합니다. 식별자의 뒤의 모든 부분은 그대로 복사됩니다. 그래서 전처리 후'case NORTH :'줄은'case 1; :'. – user3386109