Meilleur expression logique

Bonjour,
J'aimerai savoir s'il existe une expression logique en C plus simple que celle-ci :
if(tab[i]!='+'||tab[i]!='-'||tab[i]!='*'||tab[i]!='%'||tab[i]!='$')...
Merci d'avance.

2 réponses

  • Votes
  • Date
  • Date décroissante
  1. Bonjour

    oui, il y a beaucoup plus simple
    if (1) // condition toujours vraie
    car tab[i] est forcément différent de '+' ou de '-' ou de '%' ou de '$'
    1. rebonjour,

      je crois que je ne me suis pas fais bien comprendre : tab est un pointeur vers chaîne donc il se peut que tab[i] est égale a l'un de ces caractères. Le truc c'est que je cherche une simplification du genre
      tab[i]!='+','-','*','%','$'
      mais la syntaxe est fausse...
  2. Si, la syntaxe de ton 1er message était correcte. Seulement, ton expression est toujours vraie.

    Je suppose que ce que tu cherches est la fonction strpos :
    if (strpos("+-*%$",tab[i])==-1... -1 = pas trouvé