Je voudrais savoir comment recuperer les donnees, chaines ou entiers, stockes dans une matrice ou dans un tableau de donnees. Je me casse la tete depuis le debut de l aprem avec l'aide incluse dans tigcc et je ne vois pas poindre le bout d un solution. Les seuls exemples que j ai trouve sont des boutsd de codes qui utilisent des types perso (248). Et si vous pouviez me dire ou trouver cette aide en francais, se serait cool.
Les recuperer d'une variable situe dans MAIN par exemple et s appellant AGLM, on vas dire. Et pour pouvoir afficher les infos contenus a l'ecran. C pour faire une version C de mon 'agenda', et je voudrais pouvoir conserver le format de matrice, meme si il serait probablement plus facile de faire un type perso.
Pour les matrices, c'est:
END_TAG
END_TAG entrée[n][m] entrée[n][m-1] ... entrée[n][1] LIST_TAG
END_TAG entrée[n-1][m] entrée[n-1][m-1] ... entrée[n-1][1] LIST_TAG
...
END_TAG entrée[1][m] entrée[1][m-1] ... entrée[1][1] LIST_TAG
LIST_TAG
lol, merci, je vais regarder ca tout de suite.
et la doc en francais, tu sais pas ou elle est ?
Je sais, mais y a des termes que je ne trouve pas dans le dico ou alors la phrase perd son sens.
Vraiment vieille, la version !
Sinon, c'est mieux d'utiliser la vraie, en anglais. En plus ça te fait progresser en Anglais...
Mais c'est vrai qu'au début, la doc traduite m'a pas mal aidée à comprendre certains trucs.
EvaSDK Le 28/10/2002 à 22:55Edité par EvaSDK le 28/10/2002 à 22:56 Bon si j'ai bien compris, il faut que je foute la matrice sur la estack pour pouvoir faire mumuse avec. Mais je crois qu'il faut que j'utilise 'FindSym...' qui me renvoie un HSym puis une autre fonction, HToESI qui n'a besoin que du handle, et qui me renvoie un ESI (sorte de pointeur de chaine si je ne m'abuse). Mais ca a pas l'air de vouloir marcher.
Tu peux avoir un pointeur de type ESI directement sur le fichier avec HToESI, et tu peux utiliser les fonctions Get*Arg directement là-dessus. Pas la peine de tout recopier sur la pile d'expressions.
donc faut que je recupere le handle du fichier. Mais comment je fais pour avoir ce handle ? J'ai beau chercher je ne vois pas comment l'obtenir...
ben si j'ai vu ce qui était écris, mais j'ai pas compris ce que ca signifiais.
Si j'ai bien suivis, je fais un truc du genre:
result=SymFindPtr(SYMSTR("ma_matrice"),0);
rhandle=result.handle;
et je me sers du handle pour acceder auux données du fichier.
Kevin Kofler Le 28/10/2002 à 23:54Edité par Kevin Kofler le 28/10/2002 à 23:54 C'est à peu près ça, mais il y a une petite erreur, et il manque des tests d'échec. Correction:
result=SymFindPtr(SYMSTR("ma_matrice"),0);
if (!result) return; // erreur
rhandle=result->handle;
if (!rhandle) return; // erreur
ok je vais essayer ca. Merci
EvaSDK Le 29/10/2002 à 00:24Edité par EvaSDK le 29/10/2002 à 00:26 Bon alors, je tape:
SYM_ENTRY result;
HANDLE rhandle;
result = SymFinPtr( $(aglm) ,0); // <-ici j'ai une erreur 'Incompatible types in assignement'
______________________________ // Pourtant, il me semble avoir assigner correctement le type !
if (! result.handle) DrawStr(0,0,"Erreur",A_REPLACE); //si c juste result il me sort une erreur
rhandle = result.handle;
if (! rhandle) DrawStr(0,0,"Erreur",A_REPLACE);
oui j'ai bien vu a la compilation que ca marchait pas. Au fait pkoi pour acceder au élément d'une structure il fait un -> et pas un . (moi j'ai appris qu'il fallait un .) ?
Parce que tu n'utilise pas une structure, mais un pointeur vers une structure.