Salut,
Je ne comprend pas trop ton probleme. Il est effectivement possible de passer en parametre du switch
plusieurs expression, conditions etc... Mais ce sera un petit peu plus complexe. Tout est possible en c, c++. La seule limite c'est nous.
Je n'arrive pas à situer ton soucis. Peus tu m'en dire plus. Sinon, à titre d'exemple:
//...
char caractere;
// position dans le tableau
int i = 1; // alors c'est 'b'
char* tab[5] = { "a","b","c","d"};
switch(*tab[i])
{
case 'a' : caractere = *tab[0];
break;
case 'b' : caractere = *tab[1];
break;
case 'c' : caractere = *tab[2];
break;
case 'd' : caractere = *tab[3];
break;
default: break;
};
return caractere;