018
17.12.2003, 17:33 Uhr
0xdeadbeef
Gott (Operator)
|
Die vordefinierten Makros sind, soweit ich weiß, Sache des Compilers. Unter Windows definieren die meisten _WIN32, deswegen kann man es dafür ganz gut benutzen. Was usleep angeht - für den gcc dürfte __USE_BSD helfen, wie es da mit anderen Compilern aussieht, weiß ich nicht. Ob und zu welcher Version das System POSIX-kompatibel ist, kriegst du über die Makros _POSIX_VERSION bzw. _POSIX2_VERSION raus, allerdings sind die erst in der unistd.h definiert. Ein sinnvoller Weg, das zu überprüfen wäre also:
| C++: |
#if HAVE_UNISTD_H #include <unistd.h> #endif
#ifdef _POSIX_VERSION /* System ist POSIX.1-kompatibel */ #endif
#ifdef _POSIX2_VERSION /* System ist POSIX.2-kompatibel */ #endif
|
-- Einfachheit ist Voraussetzung für Zuverlässigkeit. -- Edsger Wybe Dijkstra Dieser Post wurde am 17.12.2003 um 17:33 Uhr von 0xdeadbeef editiert. |