실행되는 OS에 관계없이 운영 체제와 상호 작용할 수 있는 프로그램입니다.
대부분의 c/c++ 컴파일러에는 OS를 감지하는 매크로를 정의할 수 있는 권한이 있습니다.
GCC 컴파일러의 일부 매크로는 -
-
_WIN32:32비트 및 64비트 Windows OS용 매크로
-
_WIN64:64비트 Windows OS용 매크로.
-
_UNIX:UNIX OS용 매크로.
-
_APPLE_:macOS용 매크로
정의된 이러한 매크로를 기반으로 OS에 관계없이 작동하는 프로그램을 만들어 보겠습니다 -
예시
#include <iostream> using namespace std; int main() { #ifdef _WIN32 system("dir"); #else system("ls"); #endif return 0; }
출력
This lists all files of the directory to the output screen irrespective of OS.