Chương trình có thể tương tác với hệ điều hành bất kể OS nào đang chạy.
Hầu hết trình biên dịch C/C++ có macro phát hiện OS.
Một số macro của GCC:
- _WIN32: Windows 32-bit và 64-bit.
- _WIN64: Windows 64-bit.
- _UNIX: UNIX OS.
- _APPLE_: macOS.
Dựa trên macro, tạo chương trình chạy trên mọi OS:
Ví dụ
#includeusing namespace std; int main() { #ifdef _WIN32 system("dir"); #else system("ls"); #endif return 0; }
Kết quả
Liệt kê tất cả file trong thư mục ra màn hình bất kể OS.