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 :

Analiser Core Dumped


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de donkeyquote
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    195
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 195
    Par défaut Analiser Core Dumped
    Bonjour,

    Je me permets de poser cette question ici malgré qu'elle a plus a voir avec Linux qu'avec C++, mais dans le forum de Linux il n'y a pas grand monde et à mon avis pas tous les visiteurs sont developpeurs.

    En fait je voudrais savoir où aller chercher des fichiers de core dumped qu'une appli C++ que j'ai crée me génère. Je voudrais les analyser avec GDB.
    J
    'utilise la distribution Kubuntu 7.10

    Merci de votre aide

  2. #2
    Rédacteur

    Avatar de Davidbrcz
    Homme Profil pro
    Ing Supaéro - Doctorant ONERA
    Inscrit en
    Juin 2006
    Messages
    2 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ing Supaéro - Doctorant ONERA

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 307
    "Never use brute force in fighting an exponential." (Andrei Alexandrescu)

    Mes articles dont Conseils divers sur le C++
    Une très bonne doc sur le C++ (en) Why linux is better (fr)

  3. #3
    Membre confirmé Avatar de donkeyquote
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    195
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 195
    Par défaut Pb éliminer le dernier élément d'un vecteur de la STL lors d'un parcours
    Merci pour les infos Davidbrcz ... les liens sont très pédagogiques

    J'ai trouvé ce qui génère mon dump... je pense qu'il y doit exister un façon élégante de resoudre ce problème.

    J'ai un vecteur de la STL qui contient des pointeurs vers des entier. (chaque élément du vecteur contient un pointeur à entier)

    Une méthode M(), change la valeur des entiers pointes par le vecteur en sorte que de fois l'entier peut devenir négatif.

    Après chaque appel de M(), on va parcourir le vecteur avec un iterateur. Si l'entier pointé est négatif, alors on fait un delete de l'élément négatif pointé et on elimine l'élément pointeur du vecteur qui le pointait.

    Le probléme survient quand le dernier élément du vecteur pointé est négatif car il faut l'éliminer, et à ce moment là l'itérateur se perd et voilà le bordel ...

    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
     
     std::vector<int*> V;
    // admettons que les éléments pointés sont  {4, -7, 8, 46, 31, -1}
     
    std::vector<int*>::iterator iter;
     
    for (iter = V.begin(); iter != V.end(); iter++)
    {
              if (*(*iter)<0)
              {
                 delete *iter;
                 *iter = NULL;
                 V.erase(iter);
               } 
    }
    Comment faire si le dernier élément est négatif pour que l'itérateur ne se perde pas.

    Merci d'avance pour votre aide !

  4. #4
    Rédacteur

    Avatar de Davidbrcz
    Homme Profil pro
    Ing Supaéro - Doctorant ONERA
    Inscrit en
    Juin 2006
    Messages
    2 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ing Supaéro - Doctorant ONERA

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 307
    Par défaut
    Intéret d'avoir des pointeurs d'entier dans un vecteur ?
    Sinon pour ton code, erase renvoit un itérateur vers le prochain élément car erase invalide l'itérateur.
    "Never use brute force in fighting an exponential." (Andrei Alexandrescu)

    Mes articles dont Conseils divers sur le C++
    Une très bonne doc sur le C++ (en) Why linux is better (fr)

Discussions similaires

  1. (debutant) Core Dumped ?
    Par pouic06 dans le forum Débuter
    Réponses: 8
    Dernier message: 09/11/2008, 13h01
  2. Réponses: 1
    Dernier message: 10/12/2006, 21h37
  3. Comment générer un core dump en c
    Par gege2061 dans le forum Linux
    Réponses: 3
    Dernier message: 12/11/2006, 15h33
  4. Problème de Core Dumped !
    Par KneXtasY dans le forum C
    Réponses: 8
    Dernier message: 24/12/2005, 13h11
  5. Segmentation fault (core dumped)
    Par Battosaiii dans le forum C
    Réponses: 13
    Dernier message: 25/11/2005, 18h36

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