지난 포스팅에서 #ifdef를 이용해서 운영체제의 비트 수(32bit vs 64bit)에 따른 조건부 컴파일 방법에 대해 알아봤다. 운영체제의 비트 수 외에도 C언어는 운영체제(OS)마다 지원하는 API나 헤더 파일이 다르다는 점을 고려해서 코드를 짜야 한다. (예를 들면 윈도우에서는 windows.h를 써야 하고, 리눅스에서는 unistd.h를 쓰는 식)이럴 때 조건부 컴파일을 이용하면 코드 수정 없이 컴파일러가 알아서 해당 OS용 코드를 골라내게 할 수 있다.1. 조건부 컴파일 개념조건부 컴파일은 전처리기(Preprocessor) 단계에서 이루어진다.컴파일러가 실제 기계어로 번역하기 전, #ifdef나 #if 같은 지시문을 보고 "이 부분은 포함하고, 저 부분은 버려라"라고 판단하는 것이다.운영체제마..