Heim > Backend-Entwicklung > C++ > Wie kann ich das Betriebssystem während der C-Präprozessor-Kompilierung zuverlässig erkennen?

Wie kann ich das Betriebssystem während der C-Präprozessor-Kompilierung zuverlässig erkennen?

Mary-Kate Olsen
Freigeben: 2024-12-15 07:10:14
Original
261 Leute haben es durchsucht

How Can I Reliably Detect the Operating System During C Preprocessor Compilation?

Präprozessorerkennung von Betriebssystemen in C

Die Erkennung des Betriebssystems während der Präprozessorverarbeitung ist für das Schreiben von plattformübergreifendem C/C-Code unerlässlich. So erreichen Sie dies zuverlässig für Mac OS X, iOS, Linux und Windows:


Die meisten Compiler definieren Makros, die das Betriebssystem identifizieren. Für die Präprozessorerkennung sind diese vordefinierten Makros von entscheidender Bedeutung. GCC verfügt beispielsweise über eine umfassende Liste, die Folgendes umfasst:

</p>
<h1>falls definiert (WIN32) || definiert(_WIN32) || definiert(__WIN32__) || definiert(__NT__)</h1>
<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">// Define something for Windows (32-bit and 64-bit)
#ifdef _WIN64
    // Define something unique for Windows (64-bit only)
#else
    // Define something specific for Windows (32-bit only)
#endif
Nach dem Login kopieren

elif APPLE

#include <TargetConditionals.h>
#if TARGET_IPHONE_SIMULATOR
    // iOS, tvOS, or watchOS Simulator
#elif TARGET_OS_MACCATALYST
    // Mac's Catalyst (bridging iOS API into Mac)
#elif TARGET_OS_IPHONE
    // iOS, tvOS, or watchOS device
#elif TARGET_OS_MAC
    // Other Apple platforms
#else
    // Error: Unknown Apple platform
#endif
Nach dem Login kopieren

elif ANDROID

// Handled elsewhere (Android typically conforms to __linux__)
Nach dem Login kopieren

elif Linux

// Linux
Nach dem Login kopieren

elif Unix

// Unix
Nach dem Login kopieren

elif definiert(_POSIX_VERSION)

// POSIX
Nach dem Login kopieren

else

// Error: Unknown compiler
Nach dem Login kopieren

endif

Durch die Verwendung dieser Makros können Sie zuverlässig erkennen das Betriebssystem während der Präprozessorverarbeitung und passen Sie Ihren Code entsprechend an, um die Kompatibilität auf verschiedenen Plattformen sicherzustellen.

Das obige ist der detaillierte Inhalt vonWie kann ich das Betriebssystem während der C-Präprozessor-Kompilierung zuverlässig erkennen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage