Yamaw 2008-06-07 at 08:57pm Est-ce possible d'insérer un fichier C dans un un fichier C comme si le code du premier se trouvait à l'endroit décidé dans le deuxième ?
Comment ?
Tu peux utiliser la directive #include "mon_fichier".
Cependant, le C est conçu pour ne pas avoir besoin de faire cela, justement. Chaque fichier .c doit être compilé en un fichier .o et peut fournir un fichier .h permettant à d'autres fichiers .c d'être lié aux .o.
« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas
. »
Yamaw 2008-06-07 at 09:03pm Je doit mettre l'extension ?
Oui, tu dois mettre le nom complet du fichier.
(sinon, juste pour savoir, tu as lu le reste de ce qu'on t'a dit ?)
« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas
. »
Yamaw 2008-06-07 at 09:08pm Je doit faire avec des .h alors ?
Il ne faut surtout pas mettre du code dans les .h!!!
Il faut mettre des prototypes de fonction et des déclarations extern de variables, et définir les fonctions et variables dans le .c correspondant, compilé séparément! (Et en assembleur, les .h ne servent pas du tout parce qu'il n'y a pas de déclarations de type, il faut juste des .s ou .asm séparés là. Mais restons en C pour l'instant.)
Yamaw 2008-06-07 at 09:17pm Donc je met tout dans le même fichier C ?
Qu'est-ce qui ne va pas quand tu sépare ton code en plusieurs fichiers .c ?
Tu as bien écrit les fichiers .h permettant de faire interface entre les différents fichiers .c ?
« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas
. »
Yamaw 2008-06-07 at 09:25pm Non.
Donc je doit appeler un fichier h qui appelle le fichier c ?
Yamaw 2008-07-01 at 03:21pm Dans "void hercule1(int blabla)", je suis obligé de mettre un int? Sinon : Je peux en mettre plusieurs ? Ou zéro ?
Tu peux mettre les paramètres que tu veux, à condition que le prototype dans le .h et l'entête de fonction dans le .c correspondent.
Yamaw 2008-07-01 at 03:29pm Autre question : le "hercule1(18);", je peux le mettre dans une boucle ?
Yamaw 2008-07-01 at 03:30pm Merci. Si je veux rien mettre, je met "void" ?
Yamaw 2008-07-01 at 03:32pm Bon eh bien je ne sais pas pourquoi cela ne fonctionne pas, alors ...
Euh non, c'est bien juste après #include <tigcclib.h>, la bonne place. Il ne faut jamais mettre un #include à l'intérieur d'une fonction!
Yamaw 2008-07-01 at 04:01pm Ah ??
Mais je l'ai pas mis à l'intérieur de la fonction mais juste avant ...
En tou cas comme ça, ça marche ...
EDIT : Oups exusez moi en fait ça ne marche toujours pas, c'est parce que j'avais transférer le movais fichier sur TIemu ...
J'ai bien peur qu'il faudra que tu nous montres la source complète exacte, parce que là je ne vois pas du tout ce que pourrait être ton problème. Et le message d'erreur exact pourrait aussi servir.
Yamaw 2008-07-01 at 04:05pm Il y a aucun message d'erreur enfait.
(c'est quoi le problème ?)
« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)