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 segmentation


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Novembre 2008
    Messages
    308
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 308
    Par défaut Erreur de segmentation
    Bonsoir,

    Mon programme se plante.
    En plus, quand je tente de le débôguer, un message d'erreur de segmentation apparaît. Je sais que cette erreur a lieu quand on tente de pénétrer dans une zone mémoire interdite => problème de pointeur. Donc j'ai décidé de déclarer toutes les chaînes de caractères via les crochets car avant je les avais déclarées comme pointeurs Mais ceci n'a pas servit: il m'affiche la même erreur sans indiquer sa cause. (L'unique "*" qui apparaît dans le code est celle de la déclaration des fichiers).
    Pourriez_vous m'aider ?

    Cordialement,
    yo_haha

  2. #2
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    Septembre 2007
    Messages
    7 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 487
    Par défaut
    Citation Envoyé par yo_haha Voir le message
    Je sais que cette erreur a lieu quand on tente de pénétrer dans une zone mémoire interdite => problème de pointeur.
    C'est un raccourci un peu trop rapide.

    Donc j'ai décidé de déclarer toutes les chaînes de caractères via les crochets car avant je les avais déclarées comme pointeurs Mais ceci n'a pas servit: il m'affiche la même erreur sans indiquer sa cause.
    L'erreur de segmentation est une erreur à l'exécution, pas à la compilation, et il s'agit d'un hola posé par le microprocesseur lui-même, mettant fin à un programme fautif. Autrement dit, c'est un plantage. C'est donc normal que tu n'obtiennes pas de message d'erreur.

    Le programme peut en lui-même être valide dans les gammes de mémoire dans lequel il est censé travailler mais ne pas savoir où s'arrêter. Ce dernier problème est soit à une erreur dans la définition de tes boucles, soit à l'absence en mémoire du marqueur censé repérer la fin de ta chaîne (sentinelle).

    En tout état de cause, tes extraits ne sont pas suffisants (ce n'est pas dans ce que tu nous montres que l'erreur se trouve). Montre-nous ton code, et spécialement les endroits où tu définis tes chaînes, et ceux où tu les exploites.

  3. #3
    Expert confirmé
    Avatar de Melem
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2006
    Messages
    3 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 3 656
    Par défaut
    Tableaux et pointeurs sont deux choses très différentes. La taille d'un tableau est égale à la taille d'un élément multiplié par le nombre d'éléments qu'il peut contenir. Il y a donc assez de place dans un tableau pour contenir différentes valeurs. Un pointeur est une variable qui sert à contenir une adresse. Sa taille est égale à la taille requise pour représenter une adresse. On ne peut donc mettre qu'une adresse dans un pointeur, pas autre chose. Il faut commencer par apprendre le C avant de l'utiliser ^^.

Discussions similaires

  1. Erreurs de segmentation !
    Par anti-conformiste dans le forum Applications et environnements graphiques
    Réponses: 16
    Dernier message: 18/10/2005, 11h11
  2. Erreur de segmentation
    Par Trunks dans le forum C
    Réponses: 3
    Dernier message: 06/10/2005, 18h28
  3. Erreur de segmentation (Inconnue)
    Par Dark-Meteor dans le forum C
    Réponses: 5
    Dernier message: 08/09/2005, 13h42
  4. [Dev-C++] Erreur de segmentation...
    Par sas dans le forum Dev-C++
    Réponses: 11
    Dernier message: 26/03/2005, 14h25
  5. erreur de segmentation
    Par transistor49 dans le forum C++
    Réponses: 10
    Dernier message: 15/03/2005, 11h18

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