Fichier Header (.h) Dynamique

Résolu
yougi Messages postés 22 Date d'inscription   Statut Membre Dernière intervention   -  
yougi Messages postés 22 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je cherche à réaliser un petit programme en C portable sur tous les OS. Mais j'ai rencontré pas mal de problème :

Exemple :
L'appel de la fonction F dépend forcement du Système d'Exploitation où la compilation se fait. Donc,

- Pour OS1 il faut inclure la bibliothèque X
- Pour OS2 il faut inclure la bibliothèque Y
- ...

les questions qui se posent sont :

- Est que c'est possible de faire un test pour détecter l'OS avant d'inclure la bibliothèque concernée ? Si oui, comment procéder?

- J'ai pensé à écrire un Fichier *.h qui va dépendre du test... mais j'arrive pas. Y-a-t-il une façon pour rendre mon fichier en tête dynamique... ?

Merci chers développeur ^^
A voir également:

2 réponses

Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
Salut.
C'est possible grace aux macro du préprocesseur.
Normalement, tu peux connaitre l'OS et plein d'autre choses car le compilateur défini certaines macros ou non.
Par exemple, sous Linux, il y a __LINUX__ __LINUX_32__ etc. sous win __WIN32__
Tu peux même faire des tests sur la version du compilateur. par exmeple :
#ifdef __LINUX__
// fonction Linux
#elif defined __WIN32__
//fonction windows
#else
#warning erreur, OS non supporté
// je ne suis pas certain de la syntaxe de la dernière ligne en warning
#endif

à moins que ce ne soit pas ce que tu cherches, dans ce cas là, je t'incite à t'exprimer mieux.
3
yougi Messages postés 22 Date d'inscription   Statut Membre Dernière intervention   8
 
Oui c'est exactement ce que je cherche..... Mercii "Char Snipeur" Mon problème est résolu !!
0