전처리기 지시문

전처리기 지시문(예: #define#ifdef)은 일반적으로 소스 프로그램을 쉽게 변경하고 다른 실행 환경에서 컴파일하기 쉽게 만드는 데 사용됩니다. 소스 파일의 지시문은 전처리기에게 특정 작업을 수행하도록 지시합니다. 예를 들어 전처리기는 텍스트에서 토큰을 바꾸거나, 다른 파일의 내용을 소스 파일에 삽입하거나, 텍스트 섹션을 제거하여 파일 일부의 컴파일을 억제할 수 있습니다. 전처리기 코드 줄은 매크로 확장 전에 인식되고 수행됩니다. 따라서 매크로가 전처리기 명령처럼 보이는 것으로 확장되면 전처리기에서 인식되지 않습니다.

전처리기 문은 이스케이프 시퀀스가 지원되지 않는다는 점을 제외하고 소스 파일 문과 동일한 문자 집합을 사용합니다. 전처리기 문에 사용된 문자 집합은 실행 문자 집합과 동일합니다. 전처리기는 음수 문자 값도 인식합니다.

전처리기는 다음 지시문을 인식합니다.

숫자 기호(#)는 지시문을 포함하는 줄에서 첫 번째 비백인 공백 문자여야 합니다. 숫자 기호와 지시문의 첫 문자 사이에 공백 문자가 나타날 수 있습니다. 일부 지시문에는 인수 또는 값이 포함됩니다. 지시문 뒤에 오는 모든 텍스트(지시문의 일부인 인수 또는 값 제외)는 단일 줄 주석 구분 기호() 앞에 오거나 주석 구분 기호(///* */)로 묶어야 합니다. 전처리기 지시문이 포함된 선은 백슬래시(\)가 있는 줄 끝 표식 바로 앞에 어서 계속할 수 있습니다.

전처리기 지시문은 원본 파일의 아무 곳에나 나타날 수 있지만, 소스 파일이 나타난 후에는 나머지 원본 파일에만 적용됩니다.

참고 항목

전처리기 연산자
미리 정의된 매크로
c/c++ 전처리기 참조