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 :

Trouvez-vous des erreurs


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 38
    Par défaut Trouvez-vous des erreurs
    J'ai des erreurs de compilation, huit erreurs sur ce bout de code, je crois
    avec microsoft visual edition 2008 C++, vous auriez une idée d'ou trouver cela?



    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
    bool Tour_Depart_Valide(const Hanoi& jeu,
                            int tour_depart)
    {
      if ( (tour_depart < 0) or  (tour_depart > 2) )
      {
        return false;
      }
      return jeu.tours[tour_depart].nb_disques > 0;
    }
    bool Tour_Arrivee_Valide(const Hanoi& jeu,
                             int tour_depart,
                             int tour_arrivee)
    {
      if ( (tour_arrivee < 0) or
           (tour_arrivee > 2) )
      {
        return false;
      }

  2. #2
    Modérateur
    Avatar de bruno_pages
    Homme Profil pro
    ingénieur informaticien à la retraite
    Inscrit en
    Juin 2005
    Messages
    3 541
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : ingénieur informaticien à la retraite
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2005
    Messages : 3 541
    Par défaut
    Bonjour,

    si vous ne comprenez pas les erreurs produites pas le compilateur le mieux aurait été de les donner pour qu'on les explique.

    sur ce que vous fournissez pas d'erreur de syntaxe à priori, mais on ne sait pas ce qu'est Hanoi, donc pas possible de valider le code qui l'utilise

    par contre il est vraiment bizarre que les deux fonctions ne soient pas symétrique car Tour_Arrivee_Valide connait la tour de départ, pourquoi ?

    autre remarque : pourquoi avoir deux fonctions de validation alors que les vérification à faire sont exactement les même dans les deux cas (entre 0 et 2 et pas vide) ?
    Bruno Pagès, auteur de Bouml (freeware), mes tutoriels sur DVP (vieux, non à jour )

    N'oubliez pas de consulter les FAQ UML et les cours et tutoriels UML

  3. #3
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Par défaut
    Salut,
    Comme dit Bruno, difficile de trouver des erreurs sur si peu de code et encore plus ardu sans les messages du compilateur.

    Une remarque : l'utilisation de or (and, xor, etc.) à la place des opérateurs || (&&, ^, etc.) est assez rare mais conforme à la norme C++. Visual produit une erreur de compilation sur l'utilisation de ces mot-clés alternatifs si les extensions de langages ne sont pas désactivées. Pour supprimer cette erreur, il faut modifier l'option de compilation 'Désactivation des extensions de langage' (C/C++, Langage) de Non à Oui.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 38
    Par défaut autre problème
    Pour répondre aux questions qui m'on été posées
    Hanoi est une structure jeu
    J'ai coupé la fin du code de BOOL TOUR D ARRIVEE VALIDE
    Les fonctions sont pas les memes car c'est un jeu des tours de hanoi
    Les deux fonctions connaissent les tours de départ et d'arrivée on les demande au joueur, dans la tour de départ il faut s'assurer que ce sont bien les tours 0, ou 1 ou 2, et qu'il y a des disques sur cette tour, dans tour d'arrivée, il doit s'assurer que les tours d'arrivée sont bien 0, 1 ou 2 plus d'autres choses qui ne sont pas montrées ici car j'ai coupé le code à cet endroit

    oui, j'ai remplacé les or par des || et || et mes huit erreurs de compilation sont parties mais une autre survient, la compilation c'est alors ok, c'est un truc par rapport à vector qui deviendrait dépassé.
    Voilà ma copie d'écran du bug
    Nom : bug.jpg
Affichages : 89
Taille : 37,7 Ko
    parce que j'utilise des structure à la place de classes qui ont un comportement objet puisqu'un constructeur.

    voilà

  5. #5
    Modérateur
    Avatar de bruno_pages
    Homme Profil pro
    ingénieur informaticien à la retraite
    Inscrit en
    Juin 2005
    Messages
    3 541
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : ingénieur informaticien à la retraite
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2005
    Messages : 3 541
    Par défaut
    vous n'avez toujours pas compris nos remarques, comment voulez-vous qu'on vous aide à partir de rien ?

    si je vous demande pourquoi mon programme affiche 12 au lieu de 45, qu'est-ce que vous répondez ?

    donc la réponse à la question pourquoi un code que je ne donne pas sort en erreur ne peut qu'être ... on n'a pas de boule de cristal
    Bruno Pagès, auteur de Bouml (freeware), mes tutoriels sur DVP (vieux, non à jour )

    N'oubliez pas de consulter les FAQ UML et les cours et tutoriels UML

  6. #6
    Membre éclairé
    Inscrit en
    Avril 2005
    Messages
    1 110
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 1 110
    Par défaut
    On va essayer de jouer à la devinette

    Donc, le code maintenant il compile si j'ai bien compris. Mais à l'exécution il plante. Et d'après le message à l'écran il plante à la ligne 779 de <vector>, dans la fonction membre operator[] (merci le mode debug )
    Si ça plante dans le bout de code posté au début, c'est exactement ici
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    return jeu.tours[tour_depart].nb_disques > 0;
    Cela veut dire que la valeur de tour_depart est trop grande.

    Si ça plante en dehors de ce bout de code alors...

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

Discussions similaires

  1. Réponses: 61
    Dernier message: 12/04/2011, 10h24
  2. Que pensez-vous des générateurs de doc PHP ?
    Par Nonothehobbit dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 64
    Dernier message: 10/07/2007, 10h17
  3. [IMPORTANT] Aidez vous des [Tag's]
    Par NoisetteProd dans le forum Bases de données
    Réponses: 1
    Dernier message: 12/02/2005, 15h23
  4. [XSLT]Est ce qu'il y'a la gestion des erreur en xslt ?
    Par miloud dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 04/02/2004, 17h19
  5. [LG]gestion des erreurs
    Par frontin dans le forum Langage
    Réponses: 3
    Dernier message: 29/11/2003, 22h41

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