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 :

programme qui plante


Sujet :

C++

  1. #21
    r0d
    r0d est déconnecté
    Membre expérimenté

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    4 334
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 4 334
    Billets dans le blog
    2
    Par défaut
    Il manque juste une accolade fermante avant le catch.

  2. #22
    Membre éclairé
    Avatar de warubi
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    399
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 399
    Par défaut
    Merci beaucoup pour votre aide a tous ! Je vais essayer ca !

  3. #23
    Membre éclairé
    Avatar de warubi
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    399
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 399
    Par défaut
    Ca ne marche toujours pas. Lorsque j'interroge un eleve d'une classe, il y a marque Je suis vide, je vais planter et vector::_M_range_check. Qu'est-ce qui ne va pas cette fois ?

  4. #24
    Membre éclairé
    Avatar de warubi
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    399
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 399
    Par défaut
    Pouvez-vous m'aider svp car ca ne plantle plus mais ca affiche le message ci dessus.

  5. #25
    Membre éclairé
    Avatar de warubi
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    399
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 399
    Par défaut
    Aidez-moi svp !

  6. #26
    Membre éclairé
    Avatar de warubi
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    399
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 399
    Par défaut
    Je me permet une nouvelle fois de relancer mon appel a l'aide et en particulier a votre aide car je suis perdu
    ( je ne comprends pas pourquoi ca ne marche pas ) S.V.P.

  7. #27
    Membre expérimenté
    Avatar de David Fleury
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 253
    Par défaut
    Tu cherches à accéder à un élément du vector alors qu'il est vide (donc il n'y a aucun élément).
    Je ne vois pas trop ce que tu n'arrives pas à comprendre ?
    As-tu compris le code que tu as fait ???

  8. #28
    Membre éclairé
    Avatar de warubi
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    399
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 399
    Par défaut
    Comment puis-je faire pour remplir le vecteur?

  9. #29
    Membre éclairé
    Avatar de warubi
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    399
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 399
    Par défaut
    Pouvez-vous m'aider S.V.P ?

  10. #30
    Membre éclairé
    Avatar de warubi
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    399
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 399
    Par défaut
    Pourquoi mon vecteur est-il vide ?

  11. #31
    Membre éclairé Avatar de gelam
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2003
    Messages : 69
    Par défaut
    Bonjour,
    Ton vecteur est vide car lorsque tu parcours ton fichier tu es déjà à la fin de celui-ci ( tu as fait un count pour connaître le nombre de lignes ). Tu dois donc te repositionner au début avec ces deux instructions

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    fichier.seekg(0L,ios::beg);
    fichier.clear();
    Courage

  12. #32
    Expert éminent
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 644
    Par défaut
    Salut,

    De manière générale, si ton vecteur est vide, c'est que tu ne l'as pas rempli... Lapalisse n'aurait pas dit mieux

    Il y a, deux grosses raisons qui peuvent mener à cet état de fait

    • La fonction qui se charge de remplir le vecteur n'est jamais appelée ou fait mal son travail
    • Le vecteur "cesse d'exister" entre le moment où il est rempli et le moment où tu essaie d'accéder à ces éléments.


    En l'occurence, vu que tu n'as pas pris la précaution élémentaire de factoriser ton code, j'ai l'impression que ce qui se trouve dans la boucle while(fichier>>linge) n'est purement et simplement jamais effectué...

    Il faudrait vérifier le fonctionnement de count(), mais, je suis pour ainsi dire persuadé (sans l'avoir vérifié) que l'un de ses "effets non désirés" est... que l'on se retrouve en fin de flux apres avoir utilisé cette fonction...

    Il y a donc deux solutions possibles:
    • Soit, tu t'arrange pour revenir au début de ton fichier entre l'appel de count et le début de la boucle
    • Soit, et c'est peut etre plus facile, et plus cohérent, tu remplis directement le vecteur apres t'être assuré que le fichier existe, et tu indique le nombre d'éleves en fonctions de la taille du vecteur APRES l'avoir rempli


    En effet, tu t'emm à compter le nombre d'élèves de manière préalables, tout cela pour quoi simplement pour pouvoir provoquer un affichage, dont, le plus souvent, tu n'auras rien à faire, et qui, en plus, peut se baser sur la taille du vecteur une fois qu'il est rempli...

    Bref, tu cherches inutilement la difficulté...

    N'oulie jamais que la solution la plus simple est toujours la moins compliquée...heu, je veux dire: la meilleure

    Faire deux fois le travail, c'est le faire une fois de trop...

    Or, ici, ton code tente de parcourrir deux fois le fichier (une fois pour compter le nombre d'élève, et une fois pour remplir le vecteur)...
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  13. #33
    Membre éclairé Avatar de gelam
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2003
    Messages : 69
    Par défaut
    J'ai essayé de faire un peu de nettoyage dans ton code tout en respectant ce que tu as fait.

    Si tu veux continuer sur ce programme je te conseille d'étudier les fonctions et procédures. Ceci te permettra d'avoir un code plus lisible et plus maintenable.

    J'ai l'impression que tu as construit ton code en empruntant des bouts de code mais tu n'a pas une vision globale des fonctionnalités souhaitées.

    Allez courage, car c'est en programmant...
    Fichiers attachés Fichiers attachés

  14. #34
    Membre éclairé
    Avatar de warubi
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    399
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 399
    Par défaut
    Je vous remercie a tous pour votre aide !

  15. #35
    Membre éclairé
    Avatar de warubi
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    399
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 399
    Par défaut
    Maintenant, j'aimerais effacer la ligne ( l'eleve) pour ne plus qu'il soit reinterroger
    Pouvez-vous m'indiquer comment faire?

  16. #36
    Membre éclairé
    Avatar de warubi
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    399
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 399
    Par défaut
    J'aimerais faire cela a la fois dans la copie du fichier et dans le vecteur.
    Pouverz-vous m'aider ?

Discussions similaires

  1. Programme qui plante quand je passe une string.
    Par z980x dans le forum SL & STL
    Réponses: 4
    Dernier message: 23/01/2009, 01h40
  2. Programme qui plante : seg fault
    Par Premium dans le forum C
    Réponses: 10
    Dernier message: 01/12/2006, 16h12
  3. programme qui plante. chercher/remplacer dans des fichiers.
    Par [Hugo] dans le forum Général Python
    Réponses: 2
    Dernier message: 31/10/2006, 18h10
  4. Faire un programme qui plante et noter le plantage
    Par cedricgirard dans le forum Langage
    Réponses: 9
    Dernier message: 22/03/2006, 17h36
  5. Programme qui plante
    Par harris_macken dans le forum C++
    Réponses: 1
    Dernier message: 23/05/2005, 00h50

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