J'ai une question à propos des pointeurs, tableaux, ... Voici mon problème :
BITMAP Image_pion_1 = ...
BITMAP Image_pion_2 = ...
BITMAP Image_pion_3 = ...
BITMAP Image_pion_4 = ...
sont des images de pions de différentes taille. Dans le corps de mon programme, le pointeur qui pointe vers l'image du pion se nomme "Pointeur_pion".
J'aimerai qu'en début de programme, je puisse faire pointer "Pointeur_pion" vers l'une des quatres images de pions, en fonction d'une variable allant de 1 à 4, appellée "zoom".
J'ai eu l'idée de regrouper les adresses des quatres images dans un tableau : int table_pions[5] = {&Image_pion1, &Image_pion2, &Image_pion3, &Image_pion4};
Puis de faire pointer "Pointeur_pion" vers table_pions[zoom - 1], de cette manière :
int *Pointeur_pion;
Pointeur_pion = table_pions[zoom - 1];
Mais TIGCC m'affiche plein d'erreurs :
Initialization makes integer from pointer without a cast.
Assignment makes pointer from integer without a cast.
Cannot emit 2 byte absolute reloc to 'Image_pion_1', 'Image_pion_2', 'Image_pion3', 'Image_pion4'.
int table_pions = {&Image_pion1, &Image_pion2, &Image_pion3, &Image_pion4};
t'as pas oublié les crochets déjà? (pour déclarer un tableau).
Et puis c'est un tableau de pointeur vers des bitmap donc on le déclare comme ca:
BITMAP *table_pions[] = {&Image_pion1, &Image_pion2, &Image_pion3, &Image_pion4};

Combien de tas de bois une marmotte pourrait couper si une marmotte pouvait couper du bois ?
Merci ! Ca marche.
Par contre, pourquoi faut-il mettre une étoile devant table_pion ?
Parce que pour déclarer un tableau de short, il en faut pas : short tab1[5] = {1, 2, 3, 4, 5};
Sally Le 18/01/2006 à 23:11 Il n'a pas oublié les crochets, c'est juste qu'ils ont été transformés en code couleur... pour éviter ça utilise la balise [ pre ]

« Le bonheur, c'est une carte de bibliothèque ! » —
The gostak distims the doshes.Membrane fondatrice de la confrérie des
artistes flous.
L'univers est-il un
dodécaèdre de Poincaré ?
(``
·\ powaaaaaaaaa ! #love#
Avec la fonction DrawLine, ça provoque un bug si on dépasse les dimensions de l'écran ? J'ai essayé avec VTI, et ça ne plante pas la calculette. Pourtant dans la documentation de TIGCC, ya : "be harmful if called using parameters which are out of legal range (i.e. out of the screen area)".
le slignes de l'écran sont mémorisées les unes à la suite des autres
donc, si tu dépasses à gauche de l'écran, tu écriras sur la ligne précédente ; si tu dépasses à droite, sur la ligne suivante (ou les lignes précédentes/suivantes)
si tu dépasses en haut ou en bas de l'écran, par contre, tu écriras dans des zones mémoires qui contiennent d''autres données... ce qui peut faire planter la TI, selon les données que tu écrases
Oui, la fonction BitmapPut est clippée, mais pas DrawLine.
Humm, OK.
Tu as regardé l'aide de TIGCC pour DrawClipLine (il me semble que ce bidulon existe) ?
Oui, ça existe DrawClipLine.