Partage
  • Partager sur Facebook
  • Partager sur Twitter

Erreur de fonctions à la compilations

help me pleaaaase

Sujet résolu
    2 janvier 2008 à 18:46:20

    Bonjour à tous les zéros mais étant moi même encore un zéro je vous expose mon problème :
    Mon programme bug à la compilation et je ne comprends qu'est ce qu'il ne va pas alors si vous pouviez éclairer ma faible lanterne :D
    voici mon algo :
    1. #include <stdlib.h>
    2. #include <stdio.h>
    3. #include <string.h>
    4. #include "nb_lignes.h"
    5. int main(int argc, char *argv[])
    6. {
    7.         int lignes = 0;
    8.         lignes = nb_lignes();
    9. printf (" il ya  %d lignes",lignes);
    10.         system("PAUSE");    
    11.   return 0;
    12. }


    le message d'erreur à la compilation est le suivant : 1>main.obj : error LNK2019: symbole externe non résolu _nb_lignes référencé dans la fonction _main
    1>...\MiniProjet.exe : fatal error LNK1120: 1 externes non résolus

    Voila j'éspère que vous pourrez m'aider.

    Ah je vous donne l'algo de ma fonction nb_lignes aussi :
    1. #include <stdlib.h>
    2. #include <stdio.h>
    3. int nb_lignes ()
    4. {
    5.         FILE *fichier = NULL;
    6.         int caractereLu = 0;
    7.         int nombreDeLignes = 0;
    8. fichier = fopen ("..\\fichiertexte","r");
    9. if (fichier != NULL)
    10. {
    11.         do { caractereLu = fgetc (fichier);
    12.                 if (caractereLu == '\n')
    13.                         nombreDeLignes++; }
    14.         while (caractereLu != EOF);
    15. fclose(fichier);
    16. }
    17. else
    18. {
    19.         printf("impossible d'ouvrir le fichier fichiertexte \n");
    20. }
    21. return nombreDeLignes;
    22. }


    Voila ! :-°
    • Partager sur Facebook
    • Partager sur Twitter
      2 janvier 2008 à 18:49:09

      faut inclure
      1. #include "nb_lignes.h"

      dans l'autre fichier .c (attention au double inclusion, protège ton code de ça !).
      • Partager sur Facebook
      • Partager sur Twitter
        2 janvier 2008 à 18:52:50

        Erf, j'ai bien fait ce que tu m'as dit mais j'ai toujours les mêmes messages d'erreur si vous voulez je vous montre aussi mon fichier .h :
        1. #ifndef NB_LIGNES
        2. #define NB_LIGNES
        3. int nb_lignes ();
        4. #endif


        Voila, là vous avez tous les éléments de mon projet !!
        • Partager sur Facebook
        • Partager sur Twitter
          2 janvier 2008 à 19:00:22

          Tu es sur que tu as bien créé un projet et que tes trois fichiers y sont bien inclus?
          • Partager sur Facebook
          • Partager sur Twitter
            2 janvier 2008 à 19:05:56

            Citation : Toupi

            Tu es sur que tu as bien créé un projet et que tes trois fichiers y sont bien inclus?



            .... Oui oui j'ai bien ajouter ces fichiers dans un même projet : le .h dans "Fichiers d'en tete" et les 2 .c dans "Fichiers sources" (j'utilise visual c++ de microsoft).

            Donc je pense que l'erreur vient de mon code mais je n'arrive pas à la trouver !!! :euh:
            • Partager sur Facebook
            • Partager sur Twitter
              2 janvier 2008 à 19:17:18

              Pour le prototype de ta fonction nb_lignes et dans l'algo de ta fonction nb_lignes, colle les parenthèses à nb_lignes

              Je sais pas si ça peut nuire, mais on sait jamais :p
              • Partager sur Facebook
              • Partager sur Twitter
                2 janvier 2008 à 19:19:41

                Effectivement marc, ça ne change rien mais c'est gentil d'avoir essayé de m'aider. On va bien finir par trouver à force !! :colere2:
                • Partager sur Facebook
                • Partager sur Twitter
                  2 janvier 2008 à 19:31:22

                  Salut!

                  Moi j'ai repris tes codes et cela a très bien fonctionné (avec les parenthèses collé au nom au deux places!)
                  Bien sûr le fichier n'a pas ouvert parce que je ne l'ai pas mais moi j'ai Code::Blocks et il l'a très bien compilé!
                  • Partager sur Facebook
                  • Partager sur Twitter
                    2 janvier 2008 à 19:38:15

                    Okay, ce que tu me dis me rassure : mon code est bon (les 2 heures que j'ai passé dessus n'étaient pas veines, je sais 2h c'est long pour un ptit programme comme ça mais bon je débute) j'ai donc dû faire une erreure avec l'utilisation de visual C++, je vais essaye de recommencer le projet pour voir. Merci Marc !!
                    • Partager sur Facebook
                    • Partager sur Twitter
                      2 janvier 2008 à 19:47:16

                      De rien même si je t'ai pas vraiment aidé :p
                      Re-poste si le problèeme persiste!
                      • Partager sur Facebook
                      • Partager sur Twitter
                        2 janvier 2008 à 20:58:18

                        Vriament rien à faire toujours la même erreur, si quelqu'un utilise visual c++, j'aimerais qu'il m'aide et m'xplique la marche à suivre car je ne comprends vraiment pas !!
                        • Partager sur Facebook
                        • Partager sur Twitter
                          2 janvier 2008 à 21:03:30

                          Tu as quel système d'exploitation?

                          Et est-ce que tu as lu le tutoriel de Mateo21 sur ce site pour savoir comment installer correctement Visual?
                          Lien ici!

                          Sinon pour l'instant je ne peux pas plus t'aider!
                          • Partager sur Facebook
                          • Partager sur Twitter
                            2 janvier 2008 à 21:08:12

                            Je suis sous Vista et, oui, j'ai bien lu le tuto de m@teo, d'ailleurs c'est pas mon premier programme que je compile. Par contre c'est la première fois que j'y mets un .h, ça vient peut être de là pourtant comme je l'ai dit précédemment, chaque fichier est bien classé......
                            • Partager sur Facebook
                            • Partager sur Twitter
                              2 janvier 2008 à 21:12:43

                              Désolé! Je ne te demandais que ça car plusieurs ne font que poster sans chercher moindrement!
                              Pour ce qui est de Visual, je ne peux pas t'aider mais j'essaie de voir si l'erreur n'est pas ailleurs.
                              Sinon comment as tu nommé ton fichier .h et ton fichier .c?
                              • Partager sur Facebook
                              • Partager sur Twitter
                                2 janvier 2008 à 21:16:46

                                je les ai nommé respectivement nb_lignes.h et nb_lignes.c
                                Mais c'est bon, j'ai recommencer dans un nouveau projet et ça a marcher :o Donc c'est bon !!
                                Merci a vous pour votre aide
                                • Partager sur Facebook
                                • Partager sur Twitter
                                  2 janvier 2008 à 21:46:23

                                  De rien même si je n'ai toujours pas vraiment aidé ;)

                                  N'oublie pas de mettre ton sujet résolu :p
                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                    2 janvier 2008 à 21:55:12

                                    okay : Sujet résolu !!
                                    • Partager sur Facebook
                                    • Partager sur Twitter

                                    Erreur de fonctions à la compilations

                                    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                    • Editeur
                                    • Markdown