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

Code::Blocks Discussion :

undefined reference to `WinMain@16'|


Sujet :

Code::Blocks

  1. #1
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2010
    Messages
    229
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2010
    Messages : 229
    Points : 168
    Points
    168
    Par défaut undefined reference to `WinMain@16'|
    Bonjour a tous,

    Je débute vraiment en C/C++ et j'ai besoin de votre aide car j'ai cette ligne d'erreur,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    undefined reference to `WinMain@16'
    J'ai trouvé diverse réponse sur des forums mais aucune ne m'ont réellement aidé, c'est pourquoi je post ce sujet

    Comment faire pour corriger cette erreur merci

    Cdlt
    DoDo

  2. #2
    Membre expert

    Avatar de germinolegrand
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Octobre 2010
    Messages
    738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Octobre 2010
    Messages : 738
    Points : 3 892
    Points
    3 892
    Par défaut
    Bonsoir,

    Il semblerait que ton programme ne contienne pas de fonction main().

  3. #3
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2010
    Messages
    229
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2010
    Messages : 229
    Points : 168
    Points
    168
    Par défaut
    bonjour germinolegrand,

    pourtant si, j'ai bien mon j'ai mis en tête de page
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #include "Table_Hachage.h"
    et lorsque je compile mon "Table_Hachage.cpp" il me retourne l'erreur cité précédemment,
    le problème étant que je ne peux pas executer mon programme

    Mais je sais pas, il n'a pas l'air de faire les liens entre les fichiers

    Si quelqu'un peut me sortir de ce problème, ca serait mon nouveau super héros

    Merci d'avance

    edit :: N'hésitez pas a me demandé des précisions si vous ne me trouvez pas assez claires,
    Merci

  4. #4
    Membre expert

    Avatar de germinolegrand
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Octobre 2010
    Messages
    738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Octobre 2010
    Messages : 738
    Points : 3 892
    Points
    3 892
    Par défaut
    Disposer du code complet ne serait en effet pas du luxe pour aider .

  5. #5
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2010
    Messages
    229
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2010
    Messages : 229
    Points : 168
    Points
    168
    Par défaut Le code
    J'ai commencé ce travail sur Linux, mais l'ayant pas sur mon ordinateur personnel j'ai continuer sur Windows et codeblock ... je sais pas si ca pose un probleme , mais je préfere le préciser,

    En ce qui concerne le code , le voici le voilà :

    Ma page main.cpp
    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
    #include "element.H"
    #include "Table_Hachage.h"
    #include "cle.h"
    #include <cstdlib> // NULL
    #include <cassert> // assert
    #include <cstdio> // fprintf
    #include <stdio.h> // scanf
     
    int main(void)
    {
     
        Table TablHache;
        init_Hachage (TablHache);
        /*demander une clé à l'utilisateur ainsi qu'un élément
        insertion_Hachage (TablHache, & maclef ,& element); */
        return 0;
     
    }


    Ma page Table_hachage.h

    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
    26
    27
    28
     
    #ifndef Table_hachage
    #define Table_hachage
    #include "element.H"
    #include "cle.h"
     
     
    typedef struct Table
    {
        int taille_max ;
        Element * door;
        cle * Key ;
        int methode ;
     
    } Table;
     
    void init_Hachage( Table & TablHache);
     
    void insertion_Hachage (Table & TablHache, cle & maclef , Element & element);
     
    void HachageLineaire(Table & TablHache, cle & maclef , Element & element);
     
    void HachageQuadratique (Table & TablHache, cle & maclef , Element & element, int n);
     
    void HachageDouble (Table & TablHache, cle & maclef , Element & element);
     
     
    #endif


    Et la page Table_hachage.cpp
    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    #include "element.H"
    #include "Table_Hachage.h"
    #include "cle.h"
    #include <cstdlib> // NULL
    #include <cassert> // assert
    #include <cstdio> // fprintf
    #include <stdio.h> // scanf
     
    void init_Hachage ( Table & TablHache)
    {
        int res=23;
        printf("Entrez une valeur \n");
        res = scanf("%d", &TablHache.taille_max );
        if (res == 1)
        {
            printf(" %d \n",  TablHache.taille_max);
     
            TablHache.door= NULL;
            TablHache.Key= NULL;
            TablHache.methode =0 ;
        }
        else
        {
     
            printf("nope\n ");
     
        }
    }
     
     
     
     
    void HachageLineaire(Table & TablHache, cle & maclef , Element & element)
    {
        if (element > TablHache.taille_max)
        {
            element = 1;
            HachageLineaire (TablHache, maclef , element);
        }
     
        else if ( TablHache.Key[element]==0  )
        {
            TablHache.Key[element]= maclef;
            TablHache.door[element]= element;
        }
        else
        {
            element = element + 1;
            HachageLineaire (TablHache, maclef , element);
        }
     
    }
     
    void HachageQuadratique (Table & TablHache, cle & maclef , Element & element, int n)
    {
        if (element > TablHache.taille_max)
        {
            element = element - TablHache.taille_max;
            HachageQuadratique (TablHache, maclef , element, n);
        }
        else if ( TablHache.Key[element]==0  )
        {
            TablHache.Key[element]= maclef;
            TablHache.door[element]= element;
        }
        else
        {
            element=element+n;
            HachageQuadratique(TablHache, maclef, element, n+2);
     
        }
     
     
    }
     
     
     
    void insertion_Hachage (Table & TablHache, cle & maclef , Element & element)
    {
        if (TablHache.Key[element]== 0)
        {
            TablHache.Key[element]= maclef;
            TablHache.door[element]= element;
        }
     
        else
        {
     
            do
            {
                if(TablHache.methode =0)
                {
     
                    printf (" 1 -linéaire.\n 2 - quadratique.\n 3 - double.\n  ");
                    int res=0;
                    res = scanf("%d", &TablHache.methode  );
                    if (res !=1)
                    {
                        printf ("choix invalide . \n");
                        TablHache.methode = 0 ;
                    }
                    else if (res== 1)
                    {
                        switch (TablHache.methode)
                        {
                        case 1:
                            HachageLineaire (TablHache, maclef, element);
                            break;
                        case 2:
                            HachageQuadratique (TablHache, maclef, element, 1);
                            break;
                            /*case 3:
                            HachageDouble (TablHache, maclef, element);
                            break;*/
                        default:
                            printf ("choix invalide . \n");
                            TablHache.methode = 0 ;
                            break;
                        }
                    }
                }
                else
                {
                    switch (TablHache.methode)
                    {
                    case 1:
                        HachageLineaire (TablHache, maclef, element);
                        break;
     
                    case 2:
                        HachageQuadratique (TablHache, maclef, element, 1);
                        break;
     
                        /*case 3:
                        		HachageDouble (TablHache, maclef, element);
                        		break;*/
     
                    default:
                        printf ("choix invalide . \n");
                        TablHache.methode = 0 ;
                        break;
                    }
                }
     
            }
            while (TablHache.methode !=1 || TablHache.methode !=2 || TablHache.methode !=3);
      }
     
     
    }

    Les elements et les clé sont des Int

    Merci germinolegrand

  6. #6
    Membre expert

    Avatar de germinolegrand
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Octobre 2010
    Messages
    738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Octobre 2010
    Messages : 738
    Points : 3 892
    Points
    3 892
    Par défaut
    En cherchant sur google, cette erreur est due au type de projet que tu as créé dans C::B, il te faut un projet console, et non un projet Win32 .

    http://c.developpez.com/faq/?page=di...DIVERS_WinMain

Discussions similaires

  1. jni :undefined reference to `WinMain@16'
    Par fk04 dans le forum Entrée/Sortie
    Réponses: 1
    Dernier message: 11/03/2010, 15h09
  2. Réponses: 7
    Dernier message: 13/07/2009, 18h44
  3. undefined reference to `WinMain@16'
    Par usa75 dans le forum Dev-C++
    Réponses: 1
    Dernier message: 26/02/2008, 15h49
  4. [Linker error] undefined reference to `WinMain@16'
    Par juju03 dans le forum Dev-C++
    Réponses: 5
    Dernier message: 12/10/2007, 00h19
  5. Undefined reference to WinMain@16
    Par titor dans le forum GTK+ avec C & C++
    Réponses: 13
    Dernier message: 22/12/2005, 18h27

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