CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Cin C++

dantentin
dantentin
Niveau 3
21 novembre 2014 à 15:55:34

Bonjour,

Comment faire pour comparer deux chaines de caracteres en C++?

Par exemple :
L'utilisateur saisi "A" grace a la commande cin qui sera stocké dans la variable saisie.

Ensuite

If( saisie = A)
{
cout<<"vous avez saisie A"<<endl;
}
else
{
cout<<"vous n'avez pas saisie A"<<endl;
}

rangerprice
rangerprice
Niveau 10
21 novembre 2014 à 17:06:24

Pour comparer deux chaines de caractère, tu dois utiliser l'opérateur de comparaison ==.

Exemple:

if (saisie == "Chaine a comparer")
{
cout<<"vous avez saisie A"<<endl;
}
else {
cout<<"vous n'avez pas saisie A"<<endl;
}

Pseudo supprimé
Pseudo supprimé 21 novembre 2014 à 18:06:13

Attention au signe égal que tu utilise dans ta boucle if, comme rangerprice l'a marqué si tu cherche à tester l'égalité c'est " == " qu'il faut utiliser.

[Kyomaro]
[Kyomaro]
Niveau 10
22 novembre 2014 à 11:21:17

Si tu veux tester l'égalité, c'est ==
Si tu veux affecter une valeur à une variable, c'est =
Donc ici tu dois utiliser == car tu veux tester l'égalité de saisie avec "A"

Sinon une chaîne de caractères est toujours entourée de "", sauf si elle est stockée dans une variable.
Exemple :
if (saisie == "A") :d) Ici "A" n'est pas stocké dans une variable
Ou :
lettre = "A"
if(saisie == lettre) :d) Ici "A" est stocké dans lettre, donc on ne met pas lettre entre guillemets.

dantentin
dantentin
Niveau 3
24 novembre 2014 à 19:53:35

Merci

J'ai trouvé une solution un avec une petite précision :

cin>> action ;

if(strcmp(action, "A") == 0)

_viper_
_viper_
Niveau 10
24 novembre 2014 à 20:09:19

Pourquoi ne pas utiliser un std::string plutôt que de s'embêter avec les fonctions de manipulation des chaines issues du C ?

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment