Определение платформы в C&C++

Иногда при написании кода на c или c++ требуется написать код, специфичный для компилятора/OS. И для этого в компиляторе есть несколько предопределенных макросов для определения компилятора или OS.

Проверка ОС:

чтобы проверить, для какой платформы скомпилирован код, используйте эти предопределенные макросы:

for Windows              :  _WIN32
for Windows 64 bit       :  _WIN64 ( _WIN32 included )
for Mac OS & IOS         :  __APPLE__
for Linux & Linux-derived:  __linux__
for Android              :  __ANDROID__ ( __linux__ included )
for Akaros               :  __ros__
for NaCL                 :  __native_client__
for AsmJS                :  __asmjs__
for Fuschia              :  __Fuchsia__
Войти в полноэкранный режим Выйти из полноэкранного режима

Проверка компилятора:

чтобы проверить, какой компилятор используется:

Visual Studio       _MSC_VER
gcc                 __GNUC__
clang               __clang__
emscripten          __EMSCRIPTEN__ (for asm.js and webassembly)
MinGW 32            __MINGW32__
MinGW-w64 32bit     __MINGW32__
MinGW-w64 64bit     __MINGW64__
Войти в полноэкранный режим Выйти из полноэкранного режима

Оцените статью
Procodings.ru
Добавить комментарий