IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C++ Discussion :

Problème "undefined reference"


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2016
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2016
    Messages : 1
    Par défaut Problème "undefined reference"
    Bonjour,

    Je suis en train d'apprendre le C++ et je fais un programme console pour faire la moyenne de plusieurs valeurs. J'ai voulu séparer mon code en deux fichier mais quand je compile, il me met : undefined reference to `moyenne(int&, double*)'

    Voici mes trois fichier: - le fichier principal

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    #include <iostream>
    #include "calcul.h"
    *
    using namespace std;
    *
    int main()
    {
        int nombreNotes(0);
     
        cout << "Combien avez vous de notes ?" << endl;
        cin >> nombreNotes;
        double notes[nombreNotes];
     
        for(int i(0); i<nombreNotes; ++i)
        {
    	cout << "Donnez votre note numéro " << i+1 << " :" << endl; //ajout de 1 pour commencer de la note numéro 1
    	cin >> notes[i];
        }
     
        cout << "Vos notes sont enregistrées !" << endl;
     
        cout << "Votre moyenne est de : " << moyenne(nombreNotes, notes) <<endl;
     
        return 0;
    }
    - Le deuxième fichier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    #include <iostream>
     
    using namespace std;
     
    double moyenne(int& tailleTableau, double tableau[])
    {
        double moyenne(0);
     
        for(int i(0); i<tailleTableau; ++i)
        {
            moyenne+=tableau[i];//addition de toutes les valeurs du tableau
        }
        moyenne/=tailleTableau;
     
        return moyenne;
    }
    - le header du deuxième fichier

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    #ifndef CALCUL_H_INCLUDED
    #define CALCUL_H_INCLUDED
     
    /*
    * \brief Fonction calculant la moyenne d'un tableau de valeurs
    * \param - tailleTableau : taille du tableau dont on veux faire la moyenne de ses valeurs
    *- tableau[] : tableau contenant les valeurs dont on va faire la moyenne
    * \return moyenne : moyenne des valeurs contenues dans notre tableau
    */
     
    double moyenne(int& tailleTableau, double tableau[]);
     
    #endif // CALCUL_H_INCLUDED
    Quel est le problème ?

    Merci

  2. #2
    Membre émérite
    Avatar de Daïmanu
    Homme Profil pro
    Développeur touche à tout
    Inscrit en
    Janvier 2011
    Messages
    736
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur touche à tout

    Informations forums :
    Inscription : Janvier 2011
    Messages : 736
    Par défaut
    Salut, bienvenue sur le forum .

    Attention quand tu copies/colles ton code, toutes ces étoiles n'aident pas à la relecture.

    Comment est-ce que tu compiles ? Tu utilises un IDE ?
    Je pense que le fichier calcul (calcul.cpp ?) n'est pas compilé, donc l'éditeur de liens ne trouve pas la définition de la fonction moyenne().

    Petit détail aussi, dans cette fonction moyenne() tu déclares une variable locale double moyenne, le compilateur devrait t'indiquer un conflit de noms.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 21/03/2013, 09h19
  2. problème d'undefined reference avec codeblocks
    Par matstriker dans le forum C
    Réponses: 4
    Dernier message: 20/04/2011, 13h26
  3. Problème compilation undefined reference to main
    Par Loïc Le Bars dans le forum Fortran
    Réponses: 1
    Dernier message: 30/03/2010, 16h52
  4. Toujours des problème de "undefined reference to"
    Par Verbalinsurection dans le forum C++
    Réponses: 12
    Dernier message: 12/10/2007, 01h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo