-
Probl�me switch c++
Bonjour, je suis nouveau sur le forum.
Je vais essayer d'�tre le plus clair possible.
Je suis en train d'apprendre le c++ et je programme en ce moment le jeu du "Milles Bornes" avec la SDL.
Voila comment j'ai proc�d� :
J'initialise les 110 cartes du jeu dans un tableau[110] avec des num�ro de 1 � 19 car il y a 19 types de cartes diff�rentes.
J'initialise les 8 cartes de la main du joueur al�atoirement � partir du grand tableau pr�c�dent dans un second tableau[9].
Chaque fois que je s�l�ctionne une carte du jeu : je r�cup�re les coordonn�es du click, puis une fonction me renvoie un nombre (=indice) qui correspond � la place de la carte dans la main du joueur.
Les tests (tout marche bien � ce niveau) s'enchainent puis j'arrive au cas ou je peux jouer la carte :
A ce moment, j'effectue un switch � partir du tableau des cartes de la main du joueur et avec l'indice que j'ai r�cup�r�. Donc grace � l'indice je vais renvoyer un type de carte (de 1 � 19) et blitter cette carte pendant que je la change dans la main du joueur.
Mais l� se pose mon probl�me :
Soit carte[9] le tableau repr�sentant les types de carte que poss�de le joueur.
Soit save = l'indice de la carte s�l�ctionn�e et que l'on veut jouer.
Et bien switch(carte[save]) devrait renvoyer une valeur de 1 � 19 non?
Et bien non il me renvoie des valeurs �tranges et donc rien n'est blitt� dans le jeu.
Par contre : si je tape : switch(1), l� est bien d�sign�e la carte de type 1.
Alors : Est ce que les valeurs comprises dans mon tableau sont en v�rit� des adresses m�moires et non des chiffres comme je le pensais?
Est-ce une histoire de pointeur? (je n'en utilise pas.. je ne sais pas comment m'y prendre)..
Si quelqu'un comprend mon probl�me, sa r�ponse sera la bienenue.
Bien cordialement.
-
Bienvenu sur le forum.
Et si tu postais un peu de code pour qu'on sache notamment comment tu as d�fini ton tableau (m�me si un std::list<T> serait plus appropri�) ainsi que ton switch. On pourra surement plus t'aider.
-
Il y a des chances pour que tu initialises mal un des tableaux, car d'apr�s ce que tu dis le switch devrait fonctionner. Bien s�r ce n'est qu'une hypoth�se car sans code comme l'a dit Trunks, on ne peut rien affirmer...