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 :

Pointeurs sur chaine


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 40
    Par défaut Pointeurs sur chaine
    Bonjour à tous



    Merci d'avance

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Tu ne montres clairement pas assez de code. Et on n'a pas de boule de cristal ici...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    82
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 82
    Par défaut
    Montre le main qui apelle la fonction ainsi que la fonction complète et compilable ...

  4. #4
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 40
    Par défaut
    je précise que les fonctions addLast,calculDegre,saisiePolynome,afficherpolynome fonctionnent parfaitement

  5. #5
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par hugo1992 Voir le message
    je précise que les fonctions addLast,calculDegre,saisiePolynome,afficherpolynome fonctionnent parfaitement
    <...>
    C'est insuffisant. Il faut un code compilable qui montre le problème. Ce qui est évident pour toi est tout simplement inconnu de nous On a accès ni à ton PC, ni à ton cerveau... Un peu de bon sens...

  6. #6
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 40
    Par défaut
    merci

  7. #7
    Membre Expert Avatar de nicolas.sitbon
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2 015
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2 015
    Par défaut
    Même réponse que tout le monde néanmois on peut imaginer qu'à cette ligne la :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    resultat->val=p1->val+p2->val;
    un des pointeur est à NULL ce qui expliquerai l'erreur de segmentation; je pencherai pour resultat mais sans plus de code...

  8. #8
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    82
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 82
    Par défaut
    Quel est l'intérêt de faire ça si ils valent tous les 2 NULL ?

  9. #9
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 835
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 835
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par hugo1992 Voir le message
    Bonjour à tous

    J'aurais besoin de quelques petites explications sur mon extrait de code.
    Pourquoi j'obtient une erreur de segmentation ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    llist produit2Polynome(llist p1,llist p2)
    {
     
    llist resultat=NULL;      
    llist suite=NULL; 
    suite=resultat
     
                while (p2!=NULL)
                {
                      resultat->val=p1->val+p2->val; //ERREUR DE SEGMENTATION LA.
    Parce que "resultat" est initialisé à NULL donc t'auras du mal à aller taper dans "resultat->val" (le membre "val" de l'élément pointé par "resultat")...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  10. #10
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 40
    Par défaut
    Citation Envoyé par Sve@r Voir le message
    Parce que "resultat" est initialisé à NULL donc t'auras du mal à aller taper dans "resultat->val" (le membre "val" de l'élément pointé par "resultat")...
    D'accord mais alors comment je fais si je veux "remplir" resultat ? (c.a.d affecter une valeur à resultat->val) ?

  11. #11
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 835
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 835
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par hugo1992 Voir le message
    D'accord mais alors comment je fais si je veux "remplir" resultat ? (c.a.d affecter une valeur à resultat->val) ?
    Te faut
    1) allouer de la mémoire pour pouvoir y stocker des trucs => resultat=malloc(llist)

    2) une fois que t'as alloué la mémoire et récupéré dans "resultat" le pointeur sur la zone allouée faudra que tu renvoies ce pointeur à la fonction appelante pour qu'elle puisse s'en servir => return resultat

    3) quand t'auras plus besoin de cette zone, faudra la libérer => free(x) ("x" étant le nom de la variable de la fonction appelante qui aura récupéré le pointeur alloué)

    4) éventuellement essayer de mieux comprendre comment ça se passe en mémoire (lire des tutos C, faire des petits pgm courts avec des printf() pour voir ce qui se passe, etc...)
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

Discussions similaires

  1. Réponses: 2
    Dernier message: 15/03/2014, 20h18
  2. pointeur sur matrice de chaine
    Par chessop dans le forum Débuter
    Réponses: 11
    Dernier message: 20/03/2010, 10h59
  3. Pointeur sur une chaine de caractère string
    Par Lucier dans le forum C#
    Réponses: 9
    Dernier message: 17/03/2010, 14h22
  4. [Débutant] Pointeur sur liste chainée
    Par HaTnuX dans le forum C
    Réponses: 2
    Dernier message: 02/12/2006, 17h53
  5. Réponses: 3
    Dernier message: 19/12/2004, 14h30

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