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 :

la déclaration de variables en c


Sujet :

C

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2011
    Messages : 20
    Points : 0
    Points
    0
    Par défaut la déclaration de variables en c
    Bonsoir

    S'il vous plait ,quelqu'un peux me dire c'est la déclaration de nouveaux variables en C au moment d'exécution est possible ou non
    je doit appliquer cette idée dans mon application et je sais pas comment faire

    merci d'avance.

  2. #2
    Membre éclairé
    Avatar de Kirilenko
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    234
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 234
    Points : 807
    Points
    807
    Par défaut
    Bonjour,

    Il faudrait nous donner un exemple précis, afin que nous puissions voir si ce que tu comptes faire est possible ou pas.
    En l'état, la description de ton problème est un peu trop vague.

    Bonne journée.
    Récursivité en C : épidémie ou hérésie ?

    "Pour être un saint dans l'Église de l'Emacs, il faut vivre une vie pure. Il faut se passer de tout logiciel propriétaire. Heureusement, être célibataire n'est pas obligé. C'est donc bien mieux que les autres églises" - Richard Stallman

  3. #3
    Expert éminent sénior
    Avatar de diogene
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Juin 2005
    Messages
    5 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 761
    Points : 13 926
    Points
    13 926
    Par défaut
    Je suppose que tu évoques l'allocation dynamique de variables (malloc()) mais évidemment, ceci doit être prévu au moment de la compilation du programme.
    Publication : Concepts en C

    Mon avatar : Glenn Gould

    --------------------------------------------------------------------------
    Une réponse vous a été utile ? Remerciez son auteur en cliquant le pouce vert !

  4. #4
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2011
    Messages : 20
    Points : 0
    Points
    0
    Par défaut
    hi
    est-ce qu'on peut donner la possibilité à l'utilisateur de choisir le type de variable au moment d'exécution ( je veux appliquer ça sur les files et les piles).....

  5. #5
    Membre éclairé
    Avatar de Kirilenko
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    234
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 234
    Points : 807
    Points
    807
    Par défaut
    Je ne sais pas si ce que tu dis est à proprement parler possible, mais tu peux toujours utiliser le pointeur générique void* afin de stocker une donnée de n'importe quel type.
    Exemple de structure représentant une pile :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    /* -- Stack -- */
    typedef struct stack_s {
      /* stored data */
      void *data;
      /* pointer which refer the previous element */
      struct stack_s *prev;
    } stack_s;
    Après, à toi de te débrouiller pour voir quel type de donnée l'utilisateur a choisi et entrer sa valeur dans le champ de la structure.
    Tu trouveras quelques notes sur le pointeur générique ici.
    Récursivité en C : épidémie ou hérésie ?

    "Pour être un saint dans l'Église de l'Emacs, il faut vivre une vie pure. Il faut se passer de tout logiciel propriétaire. Heureusement, être célibataire n'est pas obligé. C'est donc bien mieux que les autres églises" - Richard Stallman

  6. #6
    Membre éclairé
    Avatar de Kirilenko
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    234
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 234
    Points : 807
    Points
    807
    Par défaut
    Tu peux même imaginer une structure de stockage des données de ce type.

    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
    /* --- stack data structure --- */
     
    /* data type */
    typedef enum type_e { DATA_CHAR, DATA_INT, DATA_DOUBLE,
                          DATA_FLOAT, DATA_ERROR } type_e;
     
    /* data structure */
    typedef struct data_s {
      /* stored data */
      void *data;
      /* data type */
      type_e type;
    } data_s;
     
    /* stack data structure */
    typedef struct stack_s {
      /* data */
      data_s *data;
      /* pointer which refers the previous element */
      struct stack_s *prev;
    } stack_s;
    Récursivité en C : épidémie ou hérésie ?

    "Pour être un saint dans l'Église de l'Emacs, il faut vivre une vie pure. Il faut se passer de tout logiciel propriétaire. Heureusement, être célibataire n'est pas obligé. C'est donc bien mieux que les autres églises" - Richard Stallman

  7. #7
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2011
    Messages : 20
    Points : 0
    Points
    0
    Par défaut salut
    d'aprés votre suggestions voici les modifications que j'ai fait
    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
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    #ifndef _file_h_
    #define _file_h_
     
    #include <stdlib.h>
     
    //typedef int variant; /* remplacer int par le type de donnees a enfiler */
     
    /*---------------- STRUCTURE DE FILE.C ---------------------------------------------*/
     
    /*
      Structure :
      Nom	:	section
      Fct	:	structure definisssant une section d'elements de type "variant"
      */
    /* data type */
    typedef enum type_e { DATA_CHAR, DATA_INT, DATA_DOUBLE,
                          DATA_FLOAT, DATA_ERROR } type_e;
     
    /* data structure */
    typedef struct data_s {
      /* stored data */
      void *data;
      /* data type */
      type_e type;
    } data_s;
     
     
    typedef struct section
    {
     /* data */
      data_s *data;
      struct section * suiv;  /* pointeur sur la section suivante */
      struct section * prec;  /* pointeur sur la section precedente */
    } section_t;
     
    /*
      Structure :
      Nom	:	file
      Fct	:	structure definissant une file d'elements de type "variant"
    */
     
    typedef struct file
    {
      int a;            /* indice de debut de la file : premier element a sortir */
      int b;            /* indice de fin de la file : dernier element a sortir */
      int pas;          /* nombre d'elements dans une section de file */
      section_t * tete; /* pointeur de tete de la file */
      section_t * sect;  /* pointeur sur la dernière section de la file */
    } file_t;
     
     
    /*---------------- FONCTIONS DE FILE.C ---------------------------------------------*/
     
    /*
      Nom	:	vide
      Fct	:	retourne un booleen indiquant si la file est vide
      Entree	:	(f) adresse de la file
      Sortie	:	booleen indiquant que la file est vide
    */
     
    unsigned short int vide(file_t * f);
     
    /*
      Nom	:	init
      Fct	:	cree une nouvelle file et retourne son adresse
      Entree	:	(maxi) nombre maximal d'elements de la file
      Sortie	:	adresse de la nouvelle file
    */
     
    file_t * init(int maxi);
     
    /*
      Nom	:	enfile
      Fct	:	enfile un nouvel element sur la file
      Entree	:	(f) adresse de la file
    			(x) element a rajouter
      Sortie	:	booleen indiquant que tout s'est bien passe
    */
     
    void enfile(file_t * f, typedef x);
     
    /*
      Nom	:	defile
      Fct	:	defile un element de la file et renvoie un booleen indiquant que tout s'est bien passe
      Entree	:	(f) adresse de la file
    			(x) adresse de stockage de l'element defile
      Sortie	:	booleen indiquant que tout s'est bien passe
    */
     
    unsigned short int defile(file_t * f, variant * x);
     
    /*
    Nom	:	supprime
    Fct	:	libere toute la mémoire occupee par une file
    Entree	:	(f) adresse de la file
    */
     
    void supprime(file_t * f);
     
    #endif
    et puisque je connais pas bcp en c j'ai eu plusieurs erreur....povez vous m'orientez svp

  8. #8
    Membre averti Avatar de hariman
    Homme Profil pro
    Développeur Java, Android
    Inscrit en
    Janvier 2008
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations professionnelles :
    Activité : Développeur Java, Android
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2008
    Messages : 200
    Points : 413
    Points
    413
    Par défaut
    Bonjour,



    Et poste un peu plus de détails sur les erreurs
    Les boutons et adorent être cliqués, donc ne les oubliez pas

  9. #9
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2011
    Messages : 20
    Points : 0
    Points
    0
    Par défaut
    par exemple

    error : tow or more data types in declaartion of "t_file"
    error : syntax error befor '*' token


    and there are more

  10. #10
    Membre confirmé

    Profil pro
    Inscrit en
    Août 2007
    Messages
    178
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 178
    Points : 451
    Points
    451
    Par défaut
    Citation Envoyé par daystar Voir le message
    error : tow or more data types in declaartion of "t_file"
    error : syntax error befor '*' token
    Justement il n'y a pas du tout de "t_file" déclaré dans le code que tu présentes, pour localiser les problèmes tu pourrais essayer de faire une version expurgée qui passe à la compilation puis ajouter petit à petit les éléments dont tu as besoin.

    Sinon cette erreur ressemble beaucoup à un point virgule oublié après l'accolade fermante d'une définition de struct.

  11. #11
    Membre éclairé
    Avatar de Kirilenko
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    234
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 234
    Points : 807
    Points
    807
    Par défaut
    Il nous faudrait les lignes où se situent les erreurs pour pouvoir t'aider...
    Récursivité en C : épidémie ou hérésie ?

    "Pour être un saint dans l'Église de l'Emacs, il faut vivre une vie pure. Il faut se passer de tout logiciel propriétaire. Heureusement, être célibataire n'est pas obligé. C'est donc bien mieux que les autres églises" - Richard Stallman

  12. #12
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2011
    Messages : 20
    Points : 0
    Points
    0
    Par défaut
    ils se sutuent a la ligne 40 pr l'erreur n°=1
    la ligne 70 pr l'erreur n)=2

  13. #13
    Membre éclairé
    Avatar de Kirilenko
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    234
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 234
    Points : 807
    Points
    807
    Par défaut
    Ligne 40, tu es sûr que c'est de ce fichier qu'il s'agit ?
    Récursivité en C : épidémie ou hérésie ?

    "Pour être un saint dans l'Église de l'Emacs, il faut vivre une vie pure. Il faut se passer de tout logiciel propriétaire. Heureusement, être célibataire n'est pas obligé. C'est donc bien mieux que les autres églises" - Richard Stallman

  14. #14
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2011
    Messages : 20
    Points : 0
    Points
    0
    Par défaut
    oui j'en suis sur

  15. #15
    Membre éclairé
    Avatar de Kirilenko
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    234
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 234
    Points : 807
    Points
    807
    Par défaut
    La ligne 40 est un commentaire, je me trompe.
    Récursivité en C : épidémie ou hérésie ?

    "Pour être un saint dans l'Église de l'Emacs, il faut vivre une vie pure. Il faut se passer de tout logiciel propriétaire. Heureusement, être célibataire n'est pas obligé. C'est donc bien mieux que les autres églises" - Richard Stallman

  16. #16
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2011
    Messages : 20
    Points : 0
    Points
    0
    Par défaut
    hi again

    le mem message s'affiche pr la ligne 50 (two or more data types in declaration of "file_t")............

  17. #17
    Membre éclairé
    Avatar de Kirilenko
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    234
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 234
    Points : 807
    Points
    807
    Par défaut
    Comme l'a dit pythéas plus haut, cela ressemble à un oubli de point-virgule après une déclaration de structure ou d'énumération. Seulement, ici, je n'en vois pas.
    De plus, chez moi, cela compile sans Warnings ni errreur...
    Récursivité en C : épidémie ou hérésie ?

    "Pour être un saint dans l'Église de l'Emacs, il faut vivre une vie pure. Il faut se passer de tout logiciel propriétaire. Heureusement, être célibataire n'est pas obligé. C'est donc bien mieux que les autres églises" - Richard Stallman

  18. #18
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2011
    Messages : 20
    Points : 0
    Points
    0
    Par défaut
    je compile un projet qui contient le fichier.c suivant avec le fichichier .h
    oui c'était ma faute j'ai pas bien éclairé les choses
    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
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    #include "file.h"
     
    #include <stdio.h>
    #include <stdlib.h>
     
     
    /*
      Nom	:	vide
      Fct	:	retourne un booleen indiquant si la file est vide
      Entree	:	(f) adresse de la file
      Sortie	:	booleen indiquant que la file est vide
    */
     
    unsigned short int  vide(file_t * f)
    {
      return ((f->a) == -1); /* la pile est vide si a=-1 */
    }
     
    /*
      Nom	:	init
      Fct	:	cree une nouvelle file et retourne son adresse
      Entree	:	(maxi) nombre maximal d'elements de la file
      Sortie	:	adresse de la nouvelle file
    */
     
    file_t * init(int pas)
    {
      file_t * adr_file=NULL; /* l'adresse de la file est NULL si l'allocation echoue */
     
      adr_file = (file_t *)malloc(sizeof(file_t)); /* adresse de la pile cree */
      if ( adr_file )
      {
        adr_file->a = -1;      /* aucun element dans la file */
        adr_file->b = -1;
        adr_file->pas = pas;  /* nombre maximal d'elements */
        adr_file->tete = NULL; /* la file est vide */
        adr_file->sect = NULL; /* la file est vide */
      }
     
      return adr_file;
    }
     
    /*
      Nom	:	enfile
      Fct	:	enfile un nouvel element sur la file
      Entree	:	(f) adresse de la file
    			(x) element a rajouter
      Sortie	:	booleen indiquant que tout s'est bien passe
    */
     
    void enfile(file_t * f, variant x)
    {
    //  unsigned short int succes = 0;
     
      if ( vide(f) ) /* si la file est vide */
      {
        f->tete = (section_t *)malloc(sizeof(section_t));             /* creation d'une premiere section */
        f->sect = f->tete;
        f->sect->tab = (variant *)malloc((f->pas) * sizeof(variant)); /* allocation de la premiere section */
        f->sect->suiv = NULL;                                         /* pas de section suivante */
        f->sect->prec = NULL;                                         /* pas de section precedente */
        f->a = 0;  /* le premier element est mis au debut du tableau */
        f->b = 0;  /* le dernier element est aussi le premier */
      }
      else
      {
        if( f->b == f->pas - 1 ) /* si la section est pleine */
        {
          f->sect->suiv = (section_t *)malloc(sizeof(section_t));       /* creation d'une nouvelle section */
          f->sect->suiv->prec = f->sect;                                /* maj section precedente */
          f->sect = f->sect->suiv;                                      /* maj derniere section */
          f->sect->tab = (variant *)malloc((f->pas) * sizeof(variant)); /* allocation de la derniere section */
          printf(" bibliothèque dynamique pour les files\n");
          f->sect->suiv = NULL;                                         /* pas de section suivante */
          f->b = 0;                                                     /* indice de fin a zero */
        }
        else
        {
          f->b = f->b + 1; /* incrementation de l'indice de fin */
        }
      }
      *(f->sect->tab + f->b) = x; /* rajout du nouvel element sur la file */
    }
     
    /*
      Nom	:	defile
      Fct	:	defile un element de la file et renvoie un booleen indiquant que tout s'est bien passe
      Entree	:	(f) adresse de la file
    			(x) adresse de stockage de l'element defile
      Sortie	:	booleen indiquant que tout s'est bien passe
    */
     
    unsigned short int defile(file_t * f, variant * x)
    {
      unsigned short int succes = 0;
     
      if ( !vide(f) ) /* si la file n'est pas vide */
        {
          *x = *(f->tete->tab + f->a); /* sortie du premier element rajoute */
          if ( f->sect->prec != NULL ) /* s'il y a au moins deux sections */
          {
            if ( f->a != f->pas - 1 ) /* si la section ne doit pas disparaitre */
            {
              f->a = f->a + 1; /*incrementation de l'indice de debut*/
            }
            else
            {
              f->tete = f->tete->suiv; /* changement de la section de tete */
              free(f->tete->prec);     /* suppression de la section */
              f->tete->prec = NULL;    /* pas de section precedente */
              f->a = 0;                /* mise a zero de l'indice de debut */
            }
          }
          else
          {
            if ( f->a != f->b ) /* si la file comporte au moins deux elements */
            {
              f->a = f->a + 1; /* incrementation de l'indice de debut */
            }
            else
            {
              free(f->tete);  /* liberation de la section */
              f->sect = NULL; /* raz du pointeur de derniere section */
              f->a = -1;      /* maintenant la file est vide */
              f->b = -1;
            }
          }
          succes = 1; /* marquage de la reussite */
        }
     
      return succes;
    }
     
    /*
    Nom	:	supprime
    Fct	:	libere toute la memoire occupee par une file
    Entree	:	(f) adresse de la file
    */
     
    void supprime(file_t * f)
    {
      section_t * cour = f->tete, * suiv;
      if ( cour != NULL )  /* s'il existe au moins une section */
      {
        suiv = f->tete->suiv;
        while ( cour != NULL )  /* tant qu'il reste des sections non supprimees */
        {
           suiv = cour->suiv;  /* progression du pointeur suivant */
           free(cour->tab);    /* liberation du contenu de la section courante */
           free(cour);         /* liberation de la section courante */
           cour = suiv;        /* progression du pointeur courant */
        }
      }
      free(f);  /* liberation de la structure pile */
    }
     
    void affiche(file_t * f){
    section_t *courant;
    int i;
    courant=f->tete;
    for (i=0;i<f->pas;++i){
        printf("%d",*courant->tab);
       // printf (" II ");
        courant = courant->suiv;
    };
    }
    int SampleAddInt(int i1, int i2)
    {
        return i1 + i2;
    }
     
    // A function doing nothing ;)
    void SampleFunction1()
    {
        // insert code here
    }
     
    // A function always returning zero
    int SampleFunction2()
    {
        // insert code here
     
        return 0;
    }

  19. #19
    Membre éclairé
    Avatar de Kirilenko
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    234
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 234
    Points : 807
    Points
    807
    Par défaut
    Je ne vois pas de déclaration de tab dans ta structure section...
    Récursivité en C : épidémie ou hérésie ?

    "Pour être un saint dans l'Église de l'Emacs, il faut vivre une vie pure. Il faut se passer de tout logiciel propriétaire. Heureusement, être célibataire n'est pas obligé. C'est donc bien mieux que les autres églises" - Richard Stallman

  20. #20
    Expert éminent sénior
    Avatar de diogene
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Juin 2005
    Messages
    5 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 761
    Points : 13 926
    Points
    13 926
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    void enfile(file_t * f, typedef x);
    Que vient faire ce typedef au lieu du type de x ?

    Erreur également pour les paramètres déclarés de type variant alors que variant n'est pas défini (la ligne de définition est en commentaires)
    Publication : Concepts en C

    Mon avatar : Glenn Gould

    --------------------------------------------------------------------------
    Une réponse vous a été utile ? Remerciez son auteur en cliquant le pouce vert !

Discussions similaires

  1. déclaration de variable public
    Par mathieu57 dans le forum MFC
    Réponses: 5
    Dernier message: 15/09/2005, 17h36
  2. [DB2] Ordre de déclaration des variables
    Par Fatah93 dans le forum DB2
    Réponses: 1
    Dernier message: 04/05/2005, 17h18
  3. déclaration de variables de 16, 32 et 128 bits
    Par samipate dans le forum C++
    Réponses: 10
    Dernier message: 30/12/2004, 22h33
  4. [FLASH MX2004] Déclaration de variables sous flash mx
    Par softyClochette dans le forum Flash
    Réponses: 4
    Dernier message: 29/11/2004, 16h11
  5. [debutant][Portée] Déclaration de variable .....
    Par Slein dans le forum Langage
    Réponses: 4
    Dernier message: 07/05/2004, 10h43

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