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 :

Récupérer une valeur d'une variable stockée dans un tableau


Sujet :

C

  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2012
    Messages : 15
    Points : 12
    Points
    12
    Par défaut Récupérer une valeur d'une variable stockée dans un tableau
    Bonjours à tous,

    Je vais essayer d'expliqué mon problème, je récupère des noms de variables dans un fichier que je stocke dans un tableau, jusque là, pas de soucis, le problème est que maintenant je souhaiterais lire les valeurs des variables récupérées. Par exemple :

    Test.c
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    int main ( int Count, char *Strings[] )
    {
        int toto =0;
        int tata =1; 
     
        SaveParam();
    }
    #include <Fichier.c>

    Dans le fichier .c :
    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
     
    void SaveParam()
    {
     
    je vais éviter de mettre les 815 lignes. 
    En gros 
    1) je viens lire le fichier Test.c 
    2) je récupère nom des initialisations 
    3) je les stockes dans un tableau, par exemple char Tab[2048][2048]
    4) je viens écrire tout ça dans un fichier texte (Sortie.txt)
    ...
            Dans le tableau Tab : 
                 Tab[0] = "toto"
                 Tab[1] = "tata"
    ....
    }

    Pour finir, le fichier Sortie.txt :
    ----------------------------------------
    int toto
    int tata
    ----------------------------------------

    Maintenant ce que je voudrais c'est que dans mon fichier "fichier.c" après avoir récupérer les noms des variables, je viens lire cette variable et je l'écris dans le fichier "Sortie.txt"

    Au final le fichier .txt aura :
    int toto -> 0
    int tata -> 1



    Quelqu'un aurait-il une idée ?


    Ps: Pour ceux qui vont me dire "Mais ça sert à quoi?" ... etc c'est assez long à expliquer, mais en gros ça ressemble fortement à un débugeur sans être un débugeur

  2. #2
    Inactif  


    Homme Profil pro
    Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Inscrit en
    Décembre 2011
    Messages
    9 012
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 9 012
    Points : 23 211
    Points
    23 211
    Par défaut
    Dans ton tableau :
    Tab[0] = "toto"
    Tab[1] = "tata"
    0 et 1 sont les clés et "toto" et "tata" sont les valeurs.
    Or dans ce cas là, tu est obligé de parcourir tout ton tableau et de comparer ton string avec tous les éléments de ton tableau.
    C'est extrêmement lourd.

    Dans ton cas, c'est l'inverse, "toto" et "tata" sont les clés et 0 et 1 les valeurs.
    Il vaut mieux faire une implémentation de std::map du C++ :
    - tu as un int que tu incrémentes à chaque nouveau maillon qui te permettra de fixer la valeur. L'avantage c'est que si tu le souhaites, tu peux mettre des valeurs autre que des int, mettre la même valeur à plusieurs clés différentes etc...
    - et pointeur sur Maillon.

    Un maillon contient :
    - la clé ;
    - la valeur ;
    - un pointeur sur un maillon (branche gauche);
    - un pointeur sur un autre maillon (branche droite);

    Et tu fais en sorte que les maillons soient triés par clés ie les éléments dont la clé est plus petite que celle du maillon en court sont dans la branche gauche de ce maillon, les autres sont dans la branche droite.

    Après tu as tout un système de rééquilibrage de ton arbre pour que lorsque tu recherches un élément tu sois sur de le trouver en x tests maximum avec n = 2^x et n nombre d'élément.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2012
    Messages : 15
    Points : 12
    Points
    12
    Par défaut
    Tout d'abord merci de t'a réponse (rapide).

    Je n'ai pas tout compris le principe de "std::map" mais le soucis c'est que je suis obligé de faire le programme en C et non en C++ pour X raison.

    Par contre pour le tab[0] et tab[1] ceci n'était qu'un exemple.
    Réellement j'ai plusieurs boucles qui pourrait ressemble à truc de ce genre là :

    fichier.c:
    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
     
    //fichierSortie -> Sortie.txt
    // par exemple chaine = "int toto,tata,titi";
    char *ptr;
    for (i=0; i< Cpt; i++)
    {
       ptr = strtok(chaine[i], sep); // séparation de la chaine[i] par ','
     
       while ( ptr != NULL ) 
       {	
    	if (strstr(ptr, "int"))
            {
    	      fputs("int ", fichierSortie); //Ecriture de int dans le fichier Sortie.txt 						
    	      fputs(ptr, fichierSortie); //Ecriture de ptr dans le fichier Sortie.txt 	
    	      fputs("\n", fichierSortie);	//Ecriture de \n dans le fichier Sortie.txt 	
    	}							
            ptr = strtok(NULL, sep);	
        }					
     
     
    }

  4. #4
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2012
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2012
    Messages : 82
    Points : 132
    Points
    132
    Par défaut
    Est ce que tu es obligé d'avoir un passage intermédiaire dans le fichier Sortie.txt avec juste le nom de tes variables??? Ou est ce que tu peux tout ecrire directement?

    Car sinon dans ta boucle plutôt que de stocker que les noms de tes variables, tu stockes le nom de tes variables + leurs valeurs...

  5. #5
    Inactif  


    Homme Profil pro
    Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Inscrit en
    Décembre 2011
    Messages
    9 012
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 9 012
    Points : 23 211
    Points
    23 211
    Par défaut
    Citation Envoyé par PoulPan Voir le message
    Tout d'abord merci de t'a réponse (rapide).

    Je n'ai pas tout compris le principe de "std::map" mais le soucis c'est que je suis obligé de faire le programme en C et non en C++ pour X raison.
    Je n'ai jamais dit de faire du C++ mais de faire une implémentation (sous-entendu équivalent).


    Citation Envoyé par PoulPan Voir le message
    Par contre pour le tab[0] et tab[1] ceci n'était qu'un exemple.
    Réellement j'ai plusieurs boucles qui pourrait ressemble à truc de ce genre là :

    fichier.c:
    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
     
    //fichierSortie -> Sortie.txt
    // par exemple chaine = "int toto,tata,titi";
    char *ptr;
    for (i=0; i< Cpt; i++)
    {
       ptr = strtok(chaine[i], sep); // séparation de la chaine[i] par ','
     
       while ( ptr != NULL ) 
       {	
    	if (strstr(ptr, "int"))
            {
    	      fputs("int ", fichierSortie); //Ecriture de int dans le fichier Sortie.txt 						
    	      fputs(ptr, fichierSortie); //Ecriture de ptr dans le fichier Sortie.txt 	
    	      fputs("\n", fichierSortie);	//Ecriture de \n dans le fichier Sortie.txt 	
    	}							
            ptr = strtok(NULL, sep);	
        }					
     
     
    }
    C'est assez différent que ce que tu disais dans ton premier post. Je crains ce que tu veux faire ne soit pas assez clair pour toi-même.

    Si tu veux à partir d'une chaîne de caractère retrouver la valeur (int) associée, mon premier post répond à ta demande.

    Sinon est-ce que la valeur des clés titi/toto est un identifiant unique pour la variable ou est-ce vraiment la valeur que tu utiliseras pour faire des calculs ?

  6. #6
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2012
    Messages : 15
    Points : 12
    Points
    12
    Par défaut
    Citation Envoyé par DrDarko Voir le message
    Est ce que tu es obligé d'avoir un passage intermédiaire dans le fichier Sortie.txt avec juste le nom de tes variables??? Ou est ce que tu peux tout ecrire directement?

    Car sinon dans ta boucle plutôt que de stocker que les noms de tes variables, tu stockes le nom de tes variables + leurs valeurs...

    Non non je ne suis pas obligé et je ne le fais pas, j'enregistre directement le tout.
    Le soucis est comment faire pour lire la valeur? car réellement, je récupère 1700 variables, et comme je l'ai montré dans mon code précédent je viens jute lire le nom de la variable donc comment faire pour lire cette variable

  7. #7
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2012
    Messages : 15
    Points : 12
    Points
    12
    Par défaut
    Citation Envoyé par Neckara Voir le message
    Je crains ce que tu veux faire ne soit pas assez clair pour toi-même.?
    Si si, je t'assures c'est clair, c'est seulement que j'ai voulu expliquer les choses simplement .

    Citation Envoyé par Neckara Voir le message
    Sinon est-ce que la valeur des clés titi/toto est un identifiant unique pour la variable ou est-ce vraiment la valeur que tu utiliseras pour faire des calculs ?
    Non, je veux juste récupérais cette valeur et l'enregistrer dans le fichier texte, je ne ferais aucun calcul avec cette valeur.

    Pour être plus clair (du moins je vais essayer), j'ai un programme en C (test.c) qui tourne en boucle (avec plusieurs thread), au début de mon programme il y a une multitude d'initialisation de variable (que je récupère dans le fichier fichier.c). Le but est de récupère les noms des variables et leurs valeurs sans modifié le fichier test.c. C'est à dire lorsque le programme tourne et que je veux savoir qu'elle est la valeur de toto j'ouvre le fichier Sortie.txt et je lis la valeur

    J'espère être plus claire

  8. #8
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2012
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2012
    Messages : 82
    Points : 132
    Points
    132
    Par défaut
    Bah en faites tu vas avoir plusieurs problèmes qui vont se pauser...

    Le plus gros du travail ça va être du parsing...

    Je sais pas trop comment est fait l'intégralité de ton programme et s'il doit gérer ce type de code :
    int main()
    {
    int i;
    char *tab;
    int bla = 15;

    i = 0;
    }
    Est ce que dans cette exemple dans ton fichier tu devras avoir ça :
    int i -> 0
    char *tab -> non initialisé
    int bla -> 15

    Si tu dois t'occuper que des variables qui sont déclarées et initialisées en même temps je te conseille de lire ton fichier.c et stocker dans un tableau chaque ligne de ton fichier et ensuite de faire du parsing en récupérant à chaque fois le type de la variable et sa valeur.
    Après si tu dois gérer les déclarations et les initialisations qui sont séparées cela va compliquer ton problème...

  9. #9
    Inactif  


    Homme Profil pro
    Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Inscrit en
    Décembre 2011
    Messages
    9 012
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 9 012
    Points : 23 211
    Points
    23 211
    Par défaut
    Je pense que je comprend ce que tu veux faire.

    Donc à chaque fois que tu veux avoir la valeur de toto tu regarde dans un fichier texte...

    Soit ce fichier te permet de partager des variables entre plusieurs processus et dans ce cas là il vaut mieux passer par de la mémoire partagé.

    Soit c'est pour faire de l’interprétation et il vaut mieux stocker les valeurs et les noms de variables dans ta mémoire avec ma solution surtout si tu as 1700 valeurs.

    Mais si tu veux vraiment lire la valeur, il te suffit d'utiliser fscanf.

  10. #10
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2012
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2012
    Messages : 82
    Points : 132
    Points
    132
    Par défaut
    Moi je t'avoue que je reste un peu dans le flou...

  11. #11
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2012
    Messages : 15
    Points : 12
    Points
    12
    Par défaut
    Citation Envoyé par DrDarko Voir le message
    Bah en faites tu vas avoir plusieurs problèmes qui vont se pauser...

    Le plus gros du travail ça va être du parsing...

    Je sais pas trop comment est fait l'intégralité de ton programme et s'il doit gérer ce type de code :

    Est ce que dans cette exemple dans ton fichier tu devras avoir ça :
    int i -> 0
    char *tab -> non initialisé
    int bla -> 15

    Si tu dois t'occuper que des variables qui sont déclarées et initialisées en même temps je te conseille de lire ton fichier.c et stocker dans un tableau chaque ligne de ton fichier et ensuite de faire du parsing en récupérant à chaque fois le type de la variable et sa valeur.
    Après si tu dois gérer les déclarations et les initialisations qui sont séparées cela va compliquer ton problème...
    En gros oui c'est ça. Je ne gère que les déclarations, pas les initialisations. Par contre comment faire pour récupérer à chaque fois la valeur (en fait c'est ma question depuis le début ). Pour l'instant pas de soucis j'ai réussi à récupérer toutes mes déclarations de variable, maintenant il me manque leurs valeurs actuelle

    Comme dans ton 'exemple':
    Comment lire la valeur de 'i' ?

  12. #12
    Inactif  


    Homme Profil pro
    Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Inscrit en
    Décembre 2011
    Messages
    9 012
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 9 012
    Points : 23 211
    Points
    23 211
    Par défaut
    Aaaaaaaaaaaaah!

    Tu as :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    int convertir(const char *);
     
    int main(void)
    {
                int i = 7;
                char * c = "i";
     
    }
    Et tu veux que convertir(c); te retourne i c'est à dire 7 ?

  13. #13
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2012
    Messages : 15
    Points : 12
    Points
    12
    Par défaut
    Citation Envoyé par Neckara Voir le message
    Donc à chaque fois que tu veux avoir la valeur de toto tu regarde dans un fichier texte...
    Wai je sais ça à l'air farfelu mais je t'assures que non. Pour des raisons technique cela va beaucoup nous aider

    Citation Envoyé par Neckara Voir le message
    Mais si tu veux vraiment lire la valeur, il te suffit d'utiliser fscanf.
    Si se serait aussi simple je n'aurais pas posé la question

  14. #14
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2012
    Messages : 15
    Points : 12
    Points
    12
    Par défaut
    Citation Envoyé par Neckara Voir le message
    Aaaaaaaaaaaaah!

    Tu as :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    int convertir(const char *);
     
    int main(void)
    {
                int i = 7;
                char * c = "i";
     
    }
    Et tu veux que convertir(c); te retourne i c'est à dire 7 ?
    Yep t'a compris l'ami

  15. #15
    Inactif  


    Homme Profil pro
    Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Inscrit en
    Décembre 2011
    Messages
    9 012
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 9 012
    Points : 23 211
    Points
    23 211
    Par défaut
    C'est impossible.
    Le C est un langage compilé, tous les noms de variables sont remplacé par des symboles puis par des adresses mémoires relative (?).

    La seule solution est d'utiliser ce que je te proposais dans mon premier post.

  16. #16
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2012
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2012
    Messages : 82
    Points : 132
    Points
    132
    Par défaut
    Je ne sais pas ce que tu veux réellement faire...
    Si le but c'est que dans ton fichier la valeur de i si elle est modifier dans ton programme elle est modifier dans le fichier sortie.txt..?
    Ou si tout ce que tu veux c'est l'initialisation de ta variable dans ton fichier sortie.txt...?

  17. #17
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2012
    Messages : 15
    Points : 12
    Points
    12
    Par défaut
    Citation Envoyé par Neckara Voir le message
    C'est impossible.
    Le C est un langage compilé, tous les noms de variables sont remplacé par des symboles puis par des adresses mémoires relative (?).
    Si si c'est possible d'où le #include <Fichier.c>

    Citation Envoyé par Neckara Voir le message
    La seule solution est d'utiliser ce que je te proposais dans mon premier post.
    Depuis tout à l'heure je fais des recherches sur std::map mais je ne comprends pas grand chose. Es tu aurais un exemple à me montrer pour que je puisse comprendre ?
    Merci

    Citation Envoyé par Neckara Voir le message
    Je ne sais pas ce que tu veux réellement faire...
    Si le but c'est que dans ton fichier la valeur de i si elle est modifier dans ton programme elle est modifier dans le fichier sortie.txt..?
    Ou si tout ce que tu veux c'est l'initialisation de ta variable dans ton fichier sortie.txt...?
    Oui mon but est de lire la valeur si elle est modifié
    La valeur de l'initialisation est assez simple a récupérer.


    Edit : Bon c'est bon j'ai eu de nouvelle directive, je n'ai pas encore la solution mais c'est possible.. Je clos le sujet pour le moment, des que j'ai fini le programme je viendrais m'expliquer ^^

    En tout cas merci à vous deux pour votre réactivité et vos réponses. Je ne m'attendais pas avoir des réponses aussi vite et que vous persistez sur le sujet

    Merci

  18. #18
    Inactif  


    Homme Profil pro
    Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Inscrit en
    Décembre 2011
    Messages
    9 012
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 9 012
    Points : 23 211
    Points
    23 211
    Par défaut
    Citation Envoyé par PoulPan Voir le message
    Si si c'est possible d'où le #include <Fichier.c>
    NON ce n'est pas possible.
    Une fois tes sources compilées, tu n'as plus de noms de variables.
    De plus inclure un .c est aberrant, on inclus des .h mais pas des .c
    La seule solution est de stocker en fonction d'un nom de variable en char * une valeur.
    Rq : On peut aussi stocker un pointeur vers une autre variable comme valeur mais mieux vaut faire l'inverse : utiliser un pointeur vers la valeur stockée.

    Citation Envoyé par PoulPan Voir le message
    Depuis tout à l'heure je fais des recherches sur std::map mais je ne comprends pas grand chose. Es tu aurais un exemple à me montrer pour que je puisse comprendre ?
    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
    ListeVariable liste = creerListe(liste);
     
    create(liste, "Nom");
    setValeur(liste, "Nom", 4);
    getValeur(liste, "Nom"); //retourne 4
     
    detruireListe(Liste);
     
    //maillon :
    ... struct .....
    {
               const char * nom;
               int valeur;
               struct m_maillon * gauche;
               struct m_maillon * droite;
    }..... , ** ListeVariable;

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 13/04/2015, 11h17
  2. [WD16] Récupérer la valeur d'une colonne d'une table d'une ligne précise
    Par elghers_hocine dans le forum WinDev
    Réponses: 16
    Dernier message: 06/05/2011, 18h11
  3. Réponses: 5
    Dernier message: 27/04/2010, 14h55
  4. Réponses: 6
    Dernier message: 31/07/2009, 17h49
  5. Réponses: 2
    Dernier message: 18/06/2009, 15h09

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