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 :

[lua] Lire une table lua avec index type string dans du c


Sujet :

C

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre tr�s actif
    Avatar de TheDrev
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    310
    D�tails du profil
    Informations personnelles :
    �ge : 42
    Localisation : France, Rh�ne (Rh�ne Alpes)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 310
    Par d�faut [lua] Lire une table lua avec index type string dans du c
    Hello,

    Je sais comment lire un tableau lua dans du c quand les index sont de types num�rique (j'utilise un while ... next (indice), comme indique dans la doc)


    En lua, il a 'pairs':
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
     
    fruits = { apple="green", orange="orange", banana="yellow" }
    for k,v in pairs(fruits) do print(k,v) end
    apple green
    orange orange
    banana yellow

    --------------------------

    Comment faire la m�me chose dans du code c, pour r�cup�rer les cl�/valeur ?
    J'ai bien r�ussi a r�cup�rer les valeurs avec les clefs en dur, mais comment faire pour it�rer sur tout le tableau pour tout re-mapper dans une structure de donn�e c ?

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
       lua_getglobal(L,"fruits");			//L 1 is table object
       int t=1;
     
       if(lua_istable(L, t)){
    			lua_pushstring(L,"apple");		    //push the desired STRING on the top of the stack 
    			lua_gettable(L,-2);				
    			printf("valeur recupere a l'indice %s : %s\n", "apple", lua_tostring(L,-1));
    			lua_pop(L,1);	//pop the table value
       }
    valeur recupere a l'indice apple : green

  2. #2
    Membre �prouv�
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    107
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 107
    Par d�faut
    � la page http://www.lua.org/manual/5.1/manual.html, j'ai trouv� la m�thode suivante :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    int lua_next (lua_State *L, int index);
    cela peut t'int�resser.

  3. #3
    Membre tr�s actif
    Avatar de TheDrev
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    310
    D�tails du profil
    Informations personnelles :
    �ge : 42
    Localisation : France, Rh�ne (Rh�ne Alpes)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 310
    Par d�faut
    merci, mais lua_next se base sur un index, et mon tableau se pr�sente sous la forme d'un dictionnaire...

Discussions similaires

  1. [D�butant] VB - Lire une table Microsoft Access avec linq
    Par HULKHULK83 dans le forum VB.NET
    R�ponses: 5
    Dernier message: 21/12/2014, 11h42
  2. lire une table Access avec VBA
    Par ivoratparis dans le forum VBA Access
    R�ponses: 2
    Dernier message: 27/06/2013, 16h56
  3. Lire une table Excel avec fusion de cellules
    Par GLDavid dans le forum C#
    R�ponses: 1
    Dernier message: 13/11/2012, 10h51
  4. [Tableaux] Lire une table simple avec foreach
    Par dreeve dans le forum Langage
    R�ponses: 2
    Dernier message: 21/03/2008, 18h38
  5. cellule d'une table visible avec focus dans div scrollable
    Par echecetmat dans le forum G�n�ral JavaScript
    R�ponses: 2
    Dernier message: 17/03/2005, 10h57

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