#ifdef 에 대해서....매크로 궁금증
앵초
2023.04.01
#ifdef WIN32
#defineMEMDBG_SERIAL_WRITE
코드가 이런식으로 되어있으면
win32라고 정의 되어 있다면 MEMDBG_SERIAL_WRITE 메크로를 지정해주자나요!!!
한번 정의가 되면 프로그램 끝날때 까지 정의되어 있는 건가여?
초보의 궁금증이였습니다 ;ㅁ;
-
힘차
#define 지시자가 포함되는 소스파일 끝까지입니다.
여기서 포함된다는것은 cpp파일에 직접 써넣는 경우뿐만 아니라
헤더파일에 포함되어 간접적으로 포함될 경우도 역시 마찬가지예요.
즉 #define 지시자가 있는 위치부터, 소스파일 끝까지입니다.
(물론 역시 중간에 #undef가 있으면 그 위치가 끝입니다.) -
슬아s
전처리 지시자의 끝날때까지 사용 여부를 물으시는것 같네요
-
우시
글을 잘못 적으신건지 잘못 알고계시는건지는 모르겠는데, #define 이나 #ifdef,#ifndef,#undef 등의
전처리 지시자들은 모두 컴파일 이전에 처리됩니다. \프로그램 끝날때까지\ 가 아닙니다. -
활력초
#undef 가 존재 했군요 ;ㅁ; 감솨합니다!!!!
-
옆집오빠야
#define 메크로를 썻으니까
#undef 쓰기전까지는 이용할수있겠죠 '