Aktualnie rozwijam aplikację wieloplatformową C. Czy istnieje jakiekolwiek makro kompilatora, które jest zdefiniowane tylko podczas kompilacji w systemie Windows, więc mogę #ifdef
niektóre specyficzne dla systemu Windows #include?Określanie, czy kompilowanie w systemie Windows lub innym systemie
Typowym przykładem jest wybór pomiędzy nagłówkami Winsock i gniazd Berkeley:
#ifdef _WINDOWS
#include <winsock.h>
#else
#include <sys/socket.h>
#include <netinet/in.h>
#include <sys/un.h>
#include <arpa/inet.h>
#include <netdb.h>
#endif
więc rzeczą szukam jest coś takiego _WINDOWS makro.
a co w przypadku 64-bitowego systemu Windows? Zakładam, że _WIN32 jest zdefiniowany tylko w systemach 32-bitowych, prawda? – NumberFour
32 jest naprawdę w stanie oddzielić go od starodawnych 16-bitowych wersji systemu Windows. Usunięcie tej definicji w Win64 zepsułoby zbyt wiele rzeczy, więc było mniej kłopotów z jego opuszczeniem. –