C++ if

Fermé
dark dragon - 15 janv. 2008 à 20:46
mamiemando Messages postés 33357 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 13 novembre 2024 - 15 janv. 2008 à 23:11
Bonjour,

J'ai un problème en c++. Je suis débutant, et je voudrait en faites faire un if.
ex:

.......
cin >> nom;
if (? pour le cin je voudrait mettre si il met "non" alors (ou oui))
{
çà je sais .
}
else
{
... je sais
}


voilà merci de répondre.

2 réponses

arth Messages postés 9374 Date d'inscription mardi 27 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2016 1 291
15 janv. 2008 à 21:44
il me semble qu'il faut utiliser la fonction strcmp, regarde de ce côté là.
0
mamiemando Messages postés 33357 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 13 novembre 2024 7 805
15 janv. 2008 à 23:11
Voici comment tu peux faire
#include <iostream>
#include <string>

int main(){
  std::string nom;
  std::cin >> nom;
  if (nom == "non" || nom == "oui"){
    // ...
  }else{
    // ...    
  }
  return 0;
}

Attention car si l'opérateur == à le sens auquel on pense pour un std::string (les deux opérandes stockent la même séquence de caractères), ce n'est pas le cas avec un char * (ou on compare une adresse mémoire). Dans le cas d'un char * il faut donc soit passer par un std::string, soit inclure <cstring> et utiliser la fonction strcmp.

Bonne chance
0