enfin le switch et les if c´est crade tout de meme
une structure avec des pointeurs sur fonctions fait ca parfaitement
//Un petit code d´exemple simple
- include < stdio.h>
typedef struct s_func
{
char *str;
int ( *f)()
} t_func;
int new_game();
int display_help();
int quit();
t_func gl_functab[] =
{
{"New Game", new_game},
{"Help", help},
{"Quit", quit},
{0, 0}
};
int main()
{
int i;
char[255] ans;
while ( 42)
{
//on récupere une chaine de caractere
printf("Entrer la commande:\n");
scanf("%s", ans);
//on fait les tests pour lancer la fonction associée
for ( i = 0; gl_functab[i].str; i++)
if ( !strcmp(ans, gl_functab[i].str))
return ( gl_functab[i].f());
//si on arrive ici c´est qu´on a une entrée invalide
printf ( "Entrée invalide\n");
}
}