Outils pour utilisateurs

Outils du site


misc:c_preproc_os_compiler_detection

Détection de l'OS et du compilateur en C

Pour détecter une majorité d'OS et de compilateurs (les plus répandus) :

main.c
#include <stdio.h>
#include <stdlib.h>
 
int main(int argc, char*argv[]) {
 
	puts("OS detection :");
#if defined(linux)
	puts("\tLinux detected !");
#elif defined(WIN32) || defined(__WIN32__) || defined(_WIN32)
	puts("\tWindows detected !");
#elif defined(__APPLE__) || defined(macintosh)
	puts("\tMac detected !");
#elif defined(BSD)
	puts("\tBSD detected !");
#elif defined(sun)
	puts("\tSolaris detected !");
#endif
 
 
	puts("\nCOMPILER detection :");
#if defined(__INTEL_COMPILER)
	puts("\tICC detected !");
#elif defined(__BORLANDC__)
	puts("\tBCC detected !");
#elif defined(_MSC_VER)
	puts("\tVisual C++ detected !");
#elif defined(__LCC__)
	puts("\tLCC detected !");
#elif defined(__TINYC__)
	puts("\tTinyCC detected !");
#elif defined(__GNUC__) /* GCC doit être en dernier car ICC et d'autres définissent aussi cette macro */
	puts("\tGCC detected !");
#endif
	return 0;
}

Pour gérer plus d'OS/compilateurs, lisez http://predef.sourceforge.net/precomp.html

misc/c_preproc_os_compiler_detection.txt · Dernière modification: 2011/11/06 18:14 par mrhide