C나 C++에서는 (#) 기호로 시작하는 다른 줄을 찾습니다. 이를 전처리 지시문이라고 합니다. 이러한 줄은 코드를 컴파일하기 전 전처리 단계에서 처리됩니다. 여기서는 세 가지 유형의 전처리 지시문을 살펴보겠습니다. 이것은 -
때때로 우리는 프로그램에서 일부 매크로를 정의합니다. 조건부 컴파일 지시문을 사용합니다. 매크로가 정의되어 있는지 확인할 수 있습니다. 우리는 그들을 통제할 수도 있습니다. 따라서 매크로가 정의되면 특정 작업이 수행되고 그렇지 않으면 다른 유사한 작업이 수행됩니다.
조건부 컴파일 지시문은 #ifdef-#elif-#else-#endif와 유사합니다. 각 #ifdef 블록은 #endif로 끝나야 합니다. #elif 또는 #else는 선택 사항입니다.
#include <iostream> #define MY_MACRO 10 using namespace std; int main() { #ifdef MACRO cout << "MACRO is defined" << endl; #elif MY_MACRO cout << "MY_MACRO is defined, value is: " << MY_MACRO; #endif }
MY_MACRO is defined, value is: 10
#line을 입력하여 라인 제어 지시문을 사용합니다. 때때로 우리는 선호하는 줄 번호와 관련하여 몇 가지 오류를 겪습니다. 이 명령을 사용하여 줄 번호를 업데이트할 수 있습니다. 이를 배치하고 현재 행을 200으로 변경하면 그 다음 행은 201에서 이동합니다.
#include <iostream> using namespace std; int main() { cout<< "Current line is: " << __LINE__ << endl; #line 200 cout << "Hello" << endl; cout << "World" << endl; cout<< "Current line is: " << __LINE__ << endl; }
Current line is: 5 Hello World Current line is: 202
error 지시문은 컴파일 전에 오류를 표시하는 데 사용됩니다. 매크로를 정의해야 한다고 가정하지만, 정의하지 않은 경우 오류 메시지가 표시될 수 있습니다. 이는 #error를 사용하여 달성할 수 있습니다.
#include <iostream> using namespace std; int main() { #ifdef MY_MACRO cout << "MY_MACRO is defined, value is: " << MY_MACRO; #else #error MY_MACRO should be defined #endif }
#error MY_MACRO should be defined
위 내용은 C/C++ 전처리 지시문의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!