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 :

Erreur de compilation d'un programme pourtant si simple


Sujet :

C++

  1. #1
    Membre habitué Avatar de hlmhv
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    212
    Détails du profil
    Informations personnelles :
    Âge : 63
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 212
    Points : 165
    Points
    165
    Par défaut Erreur de compilation d'un programme pourtant si simple
    .. mais je n'en trouve pas la cause.

    Je suis en train de patiemment passer de Pascal (Delphi xe) au C++. Intellectuellement ce n'est vraiment pas difficile dés qu'on accepte d'écrire en illisible mais je tombe sur une erreur bizarre.

    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
    #include <stdio.h>
    #include <stdlib.h>
     
    struct tmobile
      {
        int x;
        int y;
        int vitesse;
        //void montre();
     //   void bouge();
      }
     
    @ tmobile auto;
     
     
    int main()
    {
        auto.x=1;
        auto.y=2;
        auto.vitesse=25;
     
        printf("X = %d    Y = %d    Vit = %d\n", auto.x, auto.y, auto.vitesse);
        return 0;
    }
    Y a vraiment pas de quoi fouetter un chat, mais le compilateur me dit qu'en ligne pointée @ y a un bogue:
    D:\workspace\teststruct\main.c|13|error: expected '=', ',', ';', 'asm' or '__attribute__' before 'auto'

    ????

  2. #2
    Expert confirmé
    Inscrit en
    Mars 2005
    Messages
    1 431
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 1 431
    Points : 4 182
    Points
    4 182
    Par défaut
    Sommes-nous en C ou en C++ ?

    Il manque un point-virgule à la suite de la définition de struct tmobile. Sans typedef, le nom du type en C est struct tmobile : struct n'est pas optionnel comme en C++. auto est un mot-clef réservé dans les deux langages.

  3. #3
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juin 2009
    Messages
    4 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 481
    Points : 13 679
    Points
    13 679
    Billets dans le blog
    1
    Par défaut
    Et surtout : @ ça n'existe pas en C ou en C++.

  4. #4
    Membre habitué Avatar de hlmhv
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    212
    Détails du profil
    Informations personnelles :
    Âge : 63
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 212
    Points : 165
    Points
    165
    Par défaut
    Citation Envoyé par Bktero Voir le message
    Et surtout : @ ça n'existe pas en C ou en C++.
    Ben surtout c'est moi qui l'ai ajouté pour indiquer la ligne de l'erreur, aussi..

  5. #5
    Membre habitué Avatar de hlmhv
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    212
    Détails du profil
    Informations personnelles :
    Âge : 63
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 212
    Points : 165
    Points
    165
    Par défaut
    Citation Envoyé par Matt_Houston Voir le message
    Sommes-nous en C ou en C++ ?

    Il manque un point-virgule à la suite de la définition de struct tmobile. Sans typedef, le nom du type en C est struct tmobile : struct n'est pas optionnel comme en C++. auto est un mot-clef réservé dans les deux langages.
    On est en C++.
    Il faudrait donc un point virgule après l'accolade "}"?
    Pourtant il n'en faut pas tout à la fin, c'est normal?

  6. #6
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juin 2009
    Messages
    4 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 481
    Points : 13 679
    Points
    13 679
    Billets dans le blog
    1
    Par défaut
    Mets un commentaire.... Surtout qu'en plus l'erreur de compilation indique la ligne donc si tu mets le fichier original dans son intégralité, on sait où est l'erreur !

    Pas de point-virgule après une fonction ; un point-virgule avec la définition d'un type struct. C'est comme ça !

  7. #7
    Expert éminent sénior

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 189
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 189
    Points : 17 141
    Points
    17 141
    Par défaut
    Aux caractères blancs près, tu as ecrit ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    struct tmobile { /* */  } tmobile auto;
    Ceci déclare un type nommé tmobile (le premier des deux), le définit (les accolades), puis déclare une première variable de ce type, nommée tmobile.
    Ensuite arrive le mot auto.

    Ce mot n'est pas à sa place, car ce n'est pas le début d'un initialiseur ( comme int i = 0), une virgule pour introduire une seconde variable (comme int a, b;), un fragment assembleur, ou un attribut (au sens C++).

    La raison, c'est qu'effectivement, tu n'as pas terminé la définition du type.

    Il y a un ; après une accolade de forme (définition de structure ou initialisation de variable), pas après une accolade "bloc d'instructions".
    Mes principes de bases du codeur qui veut pouvoir dormir:
    • Une variable de moins est une source d'erreur en moins.
    • Un pointeur de moins est une montagne d'erreurs en moins.
    • Un copier-coller, ça doit se justifier... Deux, c'est un de trop.
    • jamais signifie "sauf si j'ai passé trois jours à prouver que je peux".
    • La plus sotte des questions est celle qu'on ne pose pas.
    Pour faire des graphes, essayez yEd.
    le ter nel est le titre porté par un de mes personnages de jeu de rôle

  8. #8
    Membre habitué Avatar de hlmhv
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    212
    Détails du profil
    Informations personnelles :
    Âge : 63
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 212
    Points : 165
    Points
    165
    Par défaut Difficuluté à compiler un struct
    En somme j'aurais dû considérer que l'accolade de fin de structure correspond au END du pascal, lequel est suivi d'un point-virgule aussi.
    Je commence à comprendre.

    Tant qu'à faire, puis-je demander quel éditeur/compilateur tu utilises? Je regrette la simplicité et l'aide au traitement des erreurs de Delphi (et plus encore Turbo-Pascal)..

    Bon:je viens d'ajouter un point-virgule comme convenu, et renommé "auto" en "voiture" ce qui donne ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    struct tmobile
      {
        int x;
        int y;
        int vitesse;
        //void montre();
     //   void bouge();
      };
     
    tmobile voiture;
    Et là, crac! Paraît que tmobile est inconnu!

  9. #9
    Expert confirmé
    Inscrit en
    Mars 2005
    Messages
    1 431
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 1 431
    Points : 4 182
    Points
    4 182
    Par défaut
    Compilerais-tu du C ?

    Citation Envoyé par hlmhv Voir le message
    Tant qu'à faire, puis-je demander quel éditeur/compilateur tu utilises?
    Du coup, nous te retournons la question. Quelles sont la ligne de compilation utilisée et ses entrées exactes ?


    Citation Envoyé par hlmhv Voir le message
    Je regrette la simplicité et l'aide au traitement des erreurs de Delphi (et plus encore Turbo-Pascal)..
    Un IDE est fait pour augmenter la productivité, par pour apprendre le langage. Tu ne te faciliteras pas la vie en sautant les étapes et en te reposant sur l'outil.

  10. #10
    Membre habitué Avatar de hlmhv
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    212
    Détails du profil
    Informations personnelles :
    Âge : 63
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 212
    Points : 165
    Points
    165
    Par défaut
    Citation Envoyé par Matt_Houston Voir le message
    Compilerais-tu du C ?



    Du coup, nous te retournons la question. Quelles sont la ligne de compilation utilisée et ses entrées exactes ?




    Un IDE est fait pour augmenter la productivité, par pour apprendre le langage. Tu ne te faciliteras pas la vie en sautant les étapes et en te reposant sur l'outil.
    Alors dans l'ordre: je lance l'EDI (Code::blocks) en mode C++.
    Je ne comprends pas l'expression "ligne de compilation", sans doute n'ai-je pas ta culture informatique (je ne suis pas professionnel)?
    Pour l'IDE, je comprends le principe que tu défends, mais après 30 ans de TP puis Delphi, se passer d'un IDE c'est tout de même peu tentant, et je ne vois pas en quoi l'IDE pourrait gêner la compilation de quelques lignes aussi basiques.

  11. #11
    Expert confirmé
    Inscrit en
    Mars 2005
    Messages
    1 431
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 1 431
    Points : 4 182
    Points
    4 182
    Par défaut
    C'est justement parce que tu te trouves déjà en difficulté face à ces « quelques lignes aussi basiques » que, sans chercher à te décourager de recourir à un IDE, je te déconseille de lui déléguer la tâche de trouver les erreurs au sein de ton code.

    Lis le cours, fais quelques exercices de base, apprends le langage normalement et tu ne te demanderas plus s'il faut mettre un point-virgule à la fin de telle ou telle ligne. Tu consacreras d'autant plus vite ton temps et ton énergie à la mise en œuvre des réelles solutions d'implémentation, et crois-moi avec le C++ c'est tous les jours un défi.


    Citation Envoyé par hlmhv Voir le message
    Je ne comprends pas l'expression "ligne de compilation"
    Je veux parler de la commande qui lance la procédure de compilation : l'exécutable invoqué, les paramètres en présence (fichiers sources..) ainsi que les options. Soit dit en passant le modèle de compilation C++ (hérité du C) est encore quelque chose dont ton IDE t'abstrait et qu'il est pourtant essentiel de connaître pour maîtriser ce que tu fais.

  12. #12
    Membre habitué Avatar de hlmhv
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    212
    Détails du profil
    Informations personnelles :
    Âge : 63
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 212
    Points : 165
    Points
    165
    Par défaut
    Citation Envoyé par Matt_Houston Voir le message
    C'est justement parce que tu te trouves déjà en difficulté face à ces « quelques lignes aussi basiques » que, sans chercher à te décourager de recourir à un IDE, je te déconseille de lui déléguer la tâche de trouver les erreurs au sein de ton code.
    Mais nom d'un bit c'est bien ce que je fais! Il me dit qu'il y a un bug, je le cherche mais ne le trouve pas. Et toi non plus soit dit en passant..
    Lis le cours, fais quelques exercices de base, apprends le langage normalement et tu ne te demanderas plus s'il faut mettre un point-virgule à la fin de telle ou telle ligne.
    Je suis "Le Langage C++" de Jessie Liberty, et c'est justement en faisant quelques exercices de bases que je tombe sur ce hic! J'ai fait d'autres choses qui tournent sans soucis.
    De toute façon, je rappelle encore une fois que j'ai corrigé en mettant le point-virgule au bon endroit et que cela ne fonctionne pas encore: le compilateur ne semble pas accepter que je définisse un objet TMobile, lequel vient d'être défini - et accepté!
    J'admets ne pas connaître et avoir tout à apprendre, alors je suis tout ouïe..

    Je veux parler de la commande qui lance la procédure de compilation : l'exécutable invoqué, les paramètres en présence (fichiers sources..) ainsi que les options. Soit dit en passant le modèle de compilation C++ (hérité du C) est encore quelque chose dont ton IDE t'abstrait et qu'il est pourtant essentiel de connaître pour maîtriser ce que tu fais.
    Bon, OK, alors tu proposes que je tape le code en fichier TXT et que j'appelle le compilateur dans une fenêtre DOS?

  13. #13
    Expert éminent sénior

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 189
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 189
    Points : 17 141
    Points
    17 141
    Par défaut
    En fait, oui. C'est précisément ce qu'il te demande.

    Quand tu sauras compiler un programme un tout petit peu complexe en ligne de commande, tu comprendras ce que tu veux faire.
    Partant de là, tu pourras comprendre ce que signifient les options de l'EDI.

    Car l'EDI utilise les valeurs que tu as donné à ses options pour générer une commande que tu aurais écrite sans lui.
    Mes principes de bases du codeur qui veut pouvoir dormir:
    • Une variable de moins est une source d'erreur en moins.
    • Un pointeur de moins est une montagne d'erreurs en moins.
    • Un copier-coller, ça doit se justifier... Deux, c'est un de trop.
    • jamais signifie "sauf si j'ai passé trois jours à prouver que je peux".
    • La plus sotte des questions est celle qu'on ne pose pas.
    Pour faire des graphes, essayez yEd.
    le ter nel est le titre porté par un de mes personnages de jeu de rôle

  14. #14
    Expert éminent sénior

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 189
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 189
    Points : 17 141
    Points
    17 141
    Par défaut
    A part cela, tu crées une variable globale, sans l'initialiser.

    Cela pose au moins deux problèmes pour la suite: une variable globale est une grosse source de bugs (surtout non const) , et ne pas initialiser une variable est un bon moyen d'échouer.

    Et là, crac! Paraît que tmobile est inconnu!
    Quels sont les symptomes précis?

    C'est à dire:
    Que dit le compilateur?
    Quel est le code exact?

    Ton problème peut venir de dizaine de choses causée par une erreur dans ton code.
    Par exemple: "Y aurait-il une macro qui vient poser problème?"
    Mes principes de bases du codeur qui veut pouvoir dormir:
    • Une variable de moins est une source d'erreur en moins.
    • Un pointeur de moins est une montagne d'erreurs en moins.
    • Un copier-coller, ça doit se justifier... Deux, c'est un de trop.
    • jamais signifie "sauf si j'ai passé trois jours à prouver que je peux".
    • La plus sotte des questions est celle qu'on ne pose pas.
    Pour faire des graphes, essayez yEd.
    le ter nel est le titre porté par un de mes personnages de jeu de rôle

  15. #15
    Expert éminent sénior

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 189
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 189
    Points : 17 141
    Points
    17 141
    Par défaut
    Par exemple, que se passe-t-il si tu compile ce programme:

    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
    #include <iostream>
     
    struct tmobile {
        int x;
        int y;
        int vitesse;
    };
     
    std::ostream& operator << (std::ostream& stream, tmobile const& m) {
        return stream << "tmobile {x = "<< m.x << ", y = " << m.y << ", vitesse = " << m.vitesse << " }";
    }
     
    int main() {
        tmobile m {1,2,25};
        std::cout << "m = " << m << std::endl;
        return 0;
    }
    Si ça casse de partout, c'est que tu compiles du C.
    Si ça compile mal, j'ai peut-être fais une coquille, mais je n'y crois pas vraiment.
    Si tu ne comprends pas tout ce code, c'est que tu débutes encore (et on t'expliquera si tu poses des questions)
    Mes principes de bases du codeur qui veut pouvoir dormir:
    • Une variable de moins est une source d'erreur en moins.
    • Un pointeur de moins est une montagne d'erreurs en moins.
    • Un copier-coller, ça doit se justifier... Deux, c'est un de trop.
    • jamais signifie "sauf si j'ai passé trois jours à prouver que je peux".
    • La plus sotte des questions est celle qu'on ne pose pas.
    Pour faire des graphes, essayez yEd.
    le ter nel est le titre porté par un de mes personnages de jeu de rôle

  16. #16
    Membre habitué Avatar de hlmhv
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    212
    Détails du profil
    Informations personnelles :
    Âge : 63
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 212
    Points : 165
    Points
    165
    Par défaut
    Citation Envoyé par ternel Voir le message
    Par exemple, que se passe-t-il si tu compile ce programme:

    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
    #include <iostream>
     
    struct tmobile {
        int x;
        int y;
        int vitesse;
    };
     
    std::ostream& operator << (std::ostream& stream, tmobile const& m) {
        return stream << "tmobile {x = "<< m.x << ", y = " << m.y << ", vitesse = " << m.vitesse << " }";
    }
     
    int main() {
        tmobile m {1,2,25};
        std::cout << "m = " << m << std::endl;
        return 0;
    }
    Si ça casse de partout, c'est que tu compiles du C.
    Si ça compile mal, j'ai peut-être fais une coquille, mais je n'y crois pas vraiment.
    Si tu ne comprends pas tout ce code, c'est que tu débutes encore (et on t'expliquera si tu poses des questions)
    Alors on avance!
    1) Ca compile nickel
    2) je suis effectivement un débutant et fier de l'être! Z'en connaissez beaucoup parmi les augustes membres qui apprennent le C++ (ou autre chose) après 36 ans de Pascal?
    3) 1 + 2 => je vais apprendre et comprendre un jour!

    Merci à tous! Je vous reviens dés que je ne comprends de nouveau plus!

  17. #17
    Expert éminent sénior

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 189
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 189
    Points : 17 141
    Points
    17 141
    Par défaut
    Du coup, je ne comprends pas pourquoi ton programme ne fonctionne pas.
    La seule explication que je vois, c'est que je n'ai pas toutes les informations sur la situation.
    Mes principes de bases du codeur qui veut pouvoir dormir:
    • Une variable de moins est une source d'erreur en moins.
    • Un pointeur de moins est une montagne d'erreurs en moins.
    • Un copier-coller, ça doit se justifier... Deux, c'est un de trop.
    • jamais signifie "sauf si j'ai passé trois jours à prouver que je peux".
    • La plus sotte des questions est celle qu'on ne pose pas.
    Pour faire des graphes, essayez yEd.
    le ter nel est le titre porté par un de mes personnages de jeu de rôle

  18. #18
    Membre habitué Avatar de hlmhv
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    212
    Détails du profil
    Informations personnelles :
    Âge : 63
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 212
    Points : 165
    Points
    165
    Par défaut
    Citation Envoyé par ternel Voir le message
    Du coup, je ne comprends pas pourquoi ton programme ne fonctionne pas.
    La seule explication que je vois, c'est que je n'ai pas toutes les informations sur la situation.
    Quelles sont les infos nécessaires?
    Du reste, j'ai déclaré une variable de type TMobile AVANT le main(): est-ce que cela pourrait être une cause d'erreur?
    Par ailleurs, as-tu un tutoriel ou un livre d'initiation à conseiller pour la suite des événements?

  19. #19
    Expert éminent sénior

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 189
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 189
    Points : 17 141
    Points
    17 141
    Par défaut
    Concernant les informations: ton code, avec le point virgule rajouté, aurait dû être accepté en C++. Comme mon code a correctement été compilé, tes conditions de travail semblent bonnes.
    Donc soit tu as un code différent que juste le fragment montré, soit il y a quelque chose que je ne devine pas.

    Ton problème étant cependant résolu, je tiens à te préciser plusieurs choses.
    Le code que tu avais était "C-esque", il correspond à un mauvais style de C++, qui remonte à avant la première norme (2003).
    Celui que je t'ai proposé est raisonnablement moderne.

    Il y a dedans beaucoup de choses:
    • déclaration d'un opérateur.
    • utilisation de la bibliothèque standard du C++ (la STL): notamment std::ostream, std::cout et std::endl.
    • utilisation de la "uniform initialization" tmobile m {1,2,25}.
    • pas de using namespace std;. Tu rencontreras cette instruction dans différents code, et c'est dommage. C'est une facilité introduite pour la compatibilité avec les codes d'avant les normes, et qui fragilise le code.


    Je t'invite à utiliser un site de référence du langage, comme cppreference.com, pour approfondir le langage et la STL.
    Ce n'est pas idéal pour débuter, mais c'est une mine d'informations sur les détails.

    Je t'invite aussi à travailler avec un maximum de "warning" activés, car chacun correspond à une erreur potentielle. Et de même, utiliser la dernière version du langage disponible (C++17 ou C++14).
    Mes principes de bases du codeur qui veut pouvoir dormir:
    • Une variable de moins est une source d'erreur en moins.
    • Un pointeur de moins est une montagne d'erreurs en moins.
    • Un copier-coller, ça doit se justifier... Deux, c'est un de trop.
    • jamais signifie "sauf si j'ai passé trois jours à prouver que je peux".
    • La plus sotte des questions est celle qu'on ne pose pas.
    Pour faire des graphes, essayez yEd.
    le ter nel est le titre porté par un de mes personnages de jeu de rôle

  20. #20
    Membre habitué Avatar de hlmhv
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    212
    Détails du profil
    Informations personnelles :
    Âge : 63
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 212
    Points : 165
    Points
    165
    Par défaut
    Merci pour ces excellents conseils!

    Je viens de recompiler le code de ternel en remplaçant STRUCT par CLASS, en ajoutant une procédure banale (qui modifie X dans plus) et cela fonctionne très bien!
    Pourtant dans le bouquin on prétend que STRUCT ou CLASS sont identiques en C++, bon ben c'est pas le cas..
    Je finirai bien par accepter ce langage du Diable!

    Merci à tous!

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 4
    Dernier message: 10/03/2017, 10h11
  2. Erreur de compilation d'un programme simple
    Par lecodeurcplusplus dans le forum Qt Creator
    Réponses: 4
    Dernier message: 28/04/2015, 12h27
  3. aide sur une erreur apres compilation d'un programme
    Par oscarus dans le forum Dev-C++
    Réponses: 0
    Dernier message: 04/02/2014, 20h08
  4. [z/OS] Erreurs de compilation d'un programme Cobol
    Par elajjouri dans le forum Cobol
    Réponses: 2
    Dernier message: 10/05/2009, 23h45
  5. Erreur de compilation sur un interpreteur de commandes simples.
    Par Tibapbedoum dans le forum Autres éditeurs
    Réponses: 0
    Dernier message: 24/11/2008, 18h07

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