[C] random sur un enum

random sur un enum [C] - C - Programmation

Marsh Posté le 09-05-2012 à 04:52:04    


A partir de l'énumération suivante :

Code :
  1. enum Direction {HAUT, BAS, GAUCHE, DROITE}direction;


 
Je souhaite effectuer un random tout en évitant si possible de réaliser un nouveau switch, sachant que dans l'enum HAUT vaut 0, BAS vaut 1 etc..
 
La fonction static_cast semble pouvoir le faire mais je ne code pas en C++, une idée ?

Reply

Marsh Posté le 09-05-2012 à 04:52:04   

Reply

Marsh Posté le 09-05-2012 à 05:22:43    

Trouvé sur un forum, il suffit de passer l'enumeration en paramètres d'une fonction, et de simplement y faire un random :

Code :
  1. int deplaceEnnemi(int carte[][NB_BLOCS_HAUTEUR], SDL_Rect *ennemi, int direction);


pour :

Code :
  1. deplacerEnnemi(carte, &positionEnnemi, (rand() % 4));

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed