C 프로그래밍 때 새로운 내용입니다. 난 당신이 #define Const 5000
같은 것을 입력하면 컴파일러가 컴파일 타임에 Const로 모든 인스턴스를 5000으로 대체한다고 생각했습니다. 틀렸어? 내 코드에서이 작업을 시도하고 구문 오류가 발생합니다. 내가 왜 이럴 수 없어?if 문에서 #defined 값을 사용할 수 있습니까 (C 프로그램에서)?
#define STEPS_PER_REV 12345
... in some function
if(CurrentPosition >= STEPS_PER_REV)
{
// do some stuff here
}
컴파일러가 구문 오류로 if 문에 대해 불만을 제기하여 세부 정보를 제공하지 않습니다.
무엇이 오류입니까? – nc3b
은 같은 파일에 있습니까? – Anycorn
오류 메시지는 "구문 오류 : 토큰 -> ';' ; 열 31 "그리고 그들은 같은 파일에 있습니다. 이상한 것은 CURRENT_POSITION = STEPS_PER_REV라는 할당 문에서 사용할 수 있지만 IF 문에서는 그렇지 않다는 것입니다. – PICyourBrain