Je dois inclure file_1.c dans main.c. Dans file_1.c, j'ai actuellement plusieurs fonctions. Si je veux appeler ces fonctions dans main.c, que dois-je faire? J'ai #include "file_1.c" dans mon programme principal.#include autres programmes C
Répondre
Utiliser approche standard en faisant le fichier d'en-tête
#include"file_1.h"
vous devrez compiler ce "file_1.c"
avec main.c
et faire un exécutable parce que les appels de fonction sont besoin en temps d'exécution.
Essayez ceci:
créer un fichier d'en-tête file_1.h
#ifndef _FILE_H
#define _FILE_H
void foo(int);
#endif
donner toutes les declaraion de la fonction et les définitions struct (le cas échéant) ou toutes les variables globales
alors en file_1.c
contiendra réelle définition de la fonction
//file_1.c
#include "file_1.h"
#include <stdio.h>
void foo(int x)
{
printf("%d\t",x);
}
//main.c
#include "file_1.h"
int main()
{
int x=10;
foo(x);
return 0;
}
comprennent le fichier d'en-tête file_1.h
dans les deux (main.c
et file_1.c
) les fichiers c
Dans gcc
gcc -Wall main.c file_1.c -o myexe.out
Pourquoi pensez-vous que vous devez faire cela?
Normalement, vous devez ajouter la déclaration de fonctions dans file_1.c dans file_1.h et l'inclure dans main.c. Lorsque vous liez le programme, il vous suffit d'inclure à la fois main.c et file_1.c (qui inclut alors les définitions des fonctions) sur la ligne de commande.
- 1. Nodejs Include Autres vues?
- 2. C++ #include - Seulement partiel #include
- 3. C programmes démarrage lent
- 4. Exécution de programmes CUDA sur des machines autres que CUDA
- 5. Interaction de deux programmes c/C++
- 6. Programmes débutant C
- 7. Modélisation C Programmes
- 8. C# liste de programmes
- 9. Sous-programmes en C#
- 10. Intégration de programmes C++
- 11. c programmes console
- 12. Compilation de programmes C++
- 13. C++ Include Structure
- 14. Tuyauterie entre deux programmes en C
- 15. Des programmes comme sys_open(), sys_read() et autres exemples de programmes au niveau du système?
- 16. Connexion de deux programmes C simultanés
- 17. Comment GCC exécute-t-il ses autres programmes?
- 18. Quels sont les autres programmes OCaml de niveau supérieur? (Vista)
- 19. Formes dans les programmes C++
- 20. compiler C++ en programmes "réels"
- 21. programmes c pour la pratique
- 22. C++ vérifier les programmes installés
- 23. Interfacer MATLAB avec les programmes C/C++
- 24. Compilation C++, organisation include fichiers
- 25. Coût d'un #include dans C
- 26. Ecrivez une macro pour C/C++ #include
- 27. Mise à jour automatique des programmes C#
- 28. Utilisation de CreateFileMapping entre deux programmes - C
- 29. Comment partager des données entre les programmes C du noyau et les programmes C de niveau utilisateur?
- 30. autotools pour 2 programmes
* "Je dois inclure dans file_1.c main.c" * Non, vous ne . C'est ce que * [linking] (http://en.wikipedia.org/wiki/Linker_ (computing)) * est pour. –
Quel système d'exploitation, quel compilateur? –
J'utilise Ubuntu. J'ai juste l'impression de ne pas comprendre complètement ce qui se passe aveC#include. Fondamentalement, je veux que les fonctions d'un autre programme C soient appelées dans mon programme principal. – iHubble