20Fermer22
DudeLe 29/10/2007 à 20:05
Un autre probleme :
Enfin, le code suivant marche, mais je suis pas sûr de faire ca comme il faut (et surtout j'ai la vilaine impression d'écrire là où je ne devrais pas).
Alors si quelqu'un peut m'enlever ce doute... ^^

Là, ce n'est qu'un exemple, qui me sert a apprendre a manipuler les pointeurs...de pointeurs, et deja que j'ai du mal avec les pointeurs tout court... magic

Le code (tableaux dynamiques style JAVA -si j'ai bien compris-) : #define LIGNES 3 #define COLONNES 4 #define USE_TI89 #define USE_TI89TI #define USE_TI92PLUS #define USE_V200 #define NOSTUB #include <std.h> void afftab( unsigned char **matrice) {   unsigned char x = 0, y = 0;   while ( y < LIGNES) {     while ( x < LIGNES) {       printf("%u\n%u * %u",matrice[y][x],y,x);       ngetchx();       x++;       clrscr();     }     y++;     x = 0;   } } void __main(void ) {   unsigned char **matrice;   unsigned char x = 0, y = 0;   int i;   LCD_BUFFER svscr;   LCD_save(svscr);   clrscr();   // --- Alloc ---   matrice = malloc(sizeof *matrice * LIGNES);   if ( matrice != NULL)   {     // --- Alloc(Suite) ---     for ( i = 0; i < LIGNES ; i++)     {       matrice[i] = malloc(sizeof **matrice * COLONNES);     }     // --- Remplissage ---     while ( y < LIGNES) {       while ( x < LIGNES) {         matrice[y][x] = x++);       }       y++;       x = 0;     }     // ---Affichage---     afftab(matrice);     // ---Cleanup---     for ( i = 0; i < LIGNES ; i++)     {       free(matrice[i]);     }     free(matrice);   }   LCD_restore(svscr); }

Voilà, donc : qu'est-ce qui va pas ? Qu'est-ce qui pourrait etre amélioré ? J'attend vos avis smile
Merci d'avance pour vos réponses happy

Edit > Mise en page du source smile
Edit2 > Correction des indices & incrementations