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 :

problème avec les tables.


Sujet :

C

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    342
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 342
    Par défaut problème avec les tables.
    Bonjour,

    j'ai un soucis avec les tables:
    Voici le code source :

    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
     
     
    typedef struct
    {
       T_toto         t_Toto; 
       T_tata         t_Tata;   
       T_titi           t_Titi;      
    }
    T_tutu;                     
     
    typedef struct
    {
       uint8          u8_State;          
       uint8          u8_Active;    
       T_tutu  t_tutu;           
    }
    T_dodo; 
     
     
    static T_dodo ma_dodo[] =
    {
       { OFF,    FALSE,      {12,         11,            1}}, 
       { OFF,    FALSE,      {14,         12,             1}},
       { OFF,    FALSE,      {15,         13,              1}}, 
       { OFF,    FALSE,      {16,         14,              1}}, 
       { OFF,    FALSE,      { 17,         15,             1}}, 
       { OFF,    FALSE,      {18,         16,              1}}, 
       { OFF,    FALSE,      {19,         17,            1}}, 
       { OFF,    FALSE,      {20,         18,            1}}, 
       { OFF,    FALSE,      { 21,         19,             1}}, 
    };

    Je voudrais faire une table qui consiste à enregistrer la table précédente en ajoutant un paramètre.
    A savoir une table avec ma_dodo et ajouter un autre paramètre.
    Pour cela j'ai donc rajouter une structure :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    typedef struct
    {
        T_dodo   t_dodo;
        uint8               u8_Couleur;
    }T__sauvegarde;
    Comment fait-on pour instancier cette nouvelle table?
    Est ce que les changements des variables dans ma_dodo[] seront aussi pris en compte automatiquement dans ma nouvelle table sauvegarde?

    Merci

  2. #2
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 811
    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 811
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par sandball22 Voir le message
    Comment fait-on pour instancier cette nouvelle table?
    Code c : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    static T_sauvegarde ma_sauvegarde[] =
    {
       {{ OFF,    FALSE,      {12,         11,            1}}, 0}, 
       {{ OFF,    FALSE,      {14,         12,             1}}, 1}, 
       {{ OFF,    FALSE,      {15,         13,              1}}, 2}, 
       {{ OFF,    FALSE,      {16,         14,              1}}, 3}, 
       {{ OFF,    FALSE,      { 17,         15,             1}}, 4}, 
       {{ OFF,    FALSE,      {18,         16,              1}}, 5}, 
       {{ OFF,    FALSE,      {19,         17,            1}}, 6}, 
       {{ OFF,    FALSE,      {20,         18,            1}}, 7}, 
       {{ OFF,    FALSE,      { 21,         19,             1}}, 8}, 
    };

    Citation Envoyé par sandball22 Voir le message
    Est ce que les changements des variables dans ma_dodo[] seront aussi pris en compte automatiquement dans ma nouvelle table sauvegarde?
    Non. Tel que tu as défini ta structure, tu ne fais qu'une recopie de t_dodo.

    Si tu veux que les modifs de dodo suivent dans sauvegarde, il faut que sauvegarde récupère un pointeur sur dodo et non recopie son contenu

    Code c : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    typedef struct
    {
        T_dodo   *pt_dodo;
        uint8               u8_Couleur;
    }T__sauvegarde;
     
     
    static T_sauvegarde ma_sauvegarde[9];
    type_t i;
     
    for (i=0; i < 9; i++)
    {
        ma_sauvegarde[i].pt_dodo=ma_dodo[i];
        ma_sauvegarde[i].ui_Couleur=...;
    }

    Accessoirement tu parles de "tables" comme dans une bdd mais même si ça s'y apparente, la terminologie exacte est "structure".
    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. [AC-2010] Problème avec les tables pivot
    Par Mathweyers dans le forum Access
    Réponses: 0
    Dernier message: 02/06/2015, 09h52
  2. Problème avec les tables de décision
    Par mickael62800 dans le forum Langages de programmation
    Réponses: 0
    Dernier message: 24/01/2015, 22h35
  3. Problème avec les tables partitionnées
    Par _shuriken_ dans le forum Administration
    Réponses: 3
    Dernier message: 02/06/2009, 14h05
  4. Réponses: 1
    Dernier message: 08/03/2006, 16h57
  5. Problème avec les champs de type table
    Par devdev dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 16/12/2004, 16h05

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