#ifdef 는 헤더파일 따라가는거임 실행하는 파일 따라가는거임?
예를들어 헤더파일이
이렇게 정의되어있으면
.c파일에서는 DEBUG를 정의하지 않아도 PRINT_DEBUG를 사용할수 있음?
왜 실행해봐도 언제 뭐가 실행되는지 잘 모르겟지.
#ifdef 는 헤더파일 따라가는거임 실행하는 파일 따라가는거임?
예를들어 헤더파일이
이렇게 정의되어있으면
.c파일에서는 DEBUG를 정의하지 않아도 PRINT_DEBUG를 사용할수 있음?
왜 실행해봐도 언제 뭐가 실행되는지 잘 모르겟지.
사진 코드 잘못쳤었네 #define DEBUG 넣어서 다시 올렸음
헤더파일이랑 실행파일을 따라간다는게 뭘소리야 얘넨 전처리기잖아
예를들어 .c파일에 #define DEBUG 되어있고 헤더파일에는 #define DEBUG 정의 안되면 #ifdef가 실행되는지, 헤더파일에만 정의되면 .c파일에는 정의를 안해도 #ifdef가 실행되는지. 그리고 매크로 단원에서 이거 배우던데
전처리기인데 그걸 왜따지는건데 대체
문제푸는데 내 컴퓨터는 오류떠서 모르겠어서 그런건데 왜. 전처리기면 뭘 따지지말라는거야
어디 있든 상관없다 이말이야
프로그램 생성 과정을 봐도 코드작성 -> 전처리기 -> 컴파일 -> 어셈블러 -> 링커 인데
#define보다 #include가 어떻게 동작하는지를 먼저 알아보는게 좋을거 같네
.c파일에 #define DEBUG 쓰고 헤더파일엔 안쓰고, #include "Debug.h" 해주면 PRINT_DEBUG 함수 작동이 안되던데.
아 헤더파일보다 #define DEBUG 먼저 해주면 작동이 되네. 순서도 중요하누