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 sur une File


Sujet :

C

  1. #1
    Membre à l'essai
    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
    Points : 23
    Points
    23
    Par défaut Erreur de segmentation sur une File
    Bonjour,


    Merci d'avance

  2. #2
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Points : 12 462
    Points
    12 462
    Par défaut
    Il ne me semble pas y avoir de problème de ce code ni dans l'allocation dynamique... sauf si quelque chose m'échappe

    Il y a juste ceci que je ne comprend pas:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    File **file1=malloc(sizeof file1);
    A quoi ca te sert ? Il suffit de procéder comme ci-dessous sauf si tu veux faire un tableau de File ce qui me semble un peu bizarre:
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    #include <stdlib.h>
     
    typedef struct file
    {
        int donnee;
        struct file *suivant;
    } File;
     
     
    static void file_enqueue(File **p_file, int donnee)
    {
        File *p_nouveau = malloc(sizeof *p_nouveau);
        if (p_nouveau != NULL)
        {
            p_nouveau->suivant = NULL;
            p_nouveau->donnee = donnee;
            if (*p_file == NULL)
            {
                *p_file = p_nouveau;
            }
            else
            {
                File *p_tmp = *p_file;
     
                while (p_tmp->suivant != NULL)
                {
                    p_tmp = p_tmp->suivant;
                }
                p_tmp->suivant = p_nouveau;
            }
        }
    }
     
     
    int main (void)
    {
       File * q = NULL;
     
       file_enqueue (&q, 10);
       file_enqueue (&q, 20);
       file_enqueue (&q, 30);
       file_enqueue (&q, 40);
       file_enqueue (&q, 50);
       file_enqueue (&q, 60);
       file_enqueue (&q, 90);
     
       return 0;
    }

  3. #3
    Membre à l'essai
    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
    Points : 23
    Points
    23
    Par défaut
    En effet ça marche comme ça merci beaucoup

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

Discussions similaires

  1. [XPATH 1.0] Erreur de segmentation sur une requête programmée en C avec libxml2
    Par BabzIm dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 26/05/2015, 16h28
  2. Erreur de segmentation sur une file
    Par memedplay dans le forum Débuter
    Réponses: 9
    Dernier message: 29/11/2013, 09h54
  3. Erreur de segmentation sur une concaténation
    Par cypher.sephiroth dans le forum Débuter
    Réponses: 14
    Dernier message: 18/08/2009, 17h42
  4. erreur PLS-00103 sur une fonction
    Par atruong dans le forum Oracle
    Réponses: 2
    Dernier message: 28/04/2006, 13h49
  5. Erreur de segmentation sur une chaine en récursif...
    Par laurent_ifips dans le forum C
    Réponses: 12
    Dernier message: 13/12/2005, 16h04

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