Partage
  • Partager sur Facebook
  • Partager sur Twitter

#include qui bug???

Sujet résolu
    21 juin 2008 à 0:10:17

    Bonsoir,

    Je rencontre un soucis...

    J'ai fait un programme tout simple (je debute en c++), qui test la programmation modulaire et qui malheureusement... ne fonctionne pas :euh:

    J'ai un main :
    #include <iostream>
    #include "fonctions diverses.h"
    
    using namespace std;
    
    int main()
    {
        tabulation();
        cout << "Hello world!" << endl;
        return 0;
    }
    


    un header fonctions diverses.h :
    #include <iostream>
    
    using namespace std;
    
    void tabulation(int saut = 5);
    


    et le fichier cpp correspondant, fonctions diverses.cpp :
    #include <iostream>
    
    using namespace std;
    
    void tabulation(int saut)
    {
        for(int i = 0 ; i < saut ; i++)
        {
            cout << " ";
        }
    }
    


    Lors de la compilation, voila le message d'erreur qui s'affiche :

    Citation : CodeBlocks

    undefined reference to 'tabulation(int)'



    Et je ne comprend pas l'erreur... ;) d'autant plus que si je place la fonction et son prototype dans le main, tout fonctionne immpecable o_O Quelqu'un pourrait m'eclairer? :)
    • Partager sur Facebook
    • Partager sur Twitter
      21 juin 2008 à 0:18:33

      1- tes fichiers doivent avoir le même nom => diverses.h et diverses.c par exemple.
      t'as pas besoin de using namespace std; dans le fichier diverses.h
      2- dans le main t'as oublié de mettre le paramètre tabulation(...);
      #include "fonctions diverses.h" => n'oublie pas de réctifier ça aussi
      • Partager sur Facebook
      • Partager sur Twitter
        21 juin 2008 à 0:22:18

        Je ne serai pas surpris que la présence d'un espace dans le nom de ton fichier soit responsable des problèmes.

        PS: pas de using dans les .h, JAMAIS.
        PPS: pas besoin qu'un .h et un .cpp/.c aient le même nom -- c'est cependant préférable.
        • Partager sur Facebook
        • Partager sur Twitter
        C++: Blog|FAQ C++ dvpz|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS| Bons livres sur le C++| PS: Je ne réponds pas aux questions techniques par MP.
          21 juin 2008 à 0:34:55

          Merci, effectivement c'était l'espace dans le nom du fichier qui faisait bugger apparement...
          • Partager sur Facebook
          • Partager sur Twitter

          #include qui bug???

          × 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