Comparation chaine de caractere

SfyLer Messages postés 38 Date d'inscription vendredi 4 avril 2003 Statut Membre Dernière intervention 31 décembre 2006 - 31 août 2003 à 18:05
cs_751 Messages postés 68 Date d'inscription vendredi 3 mai 2002 Statut Membre Dernière intervention 6 juillet 2007 - 10 sept. 2003 à 13:31
prise de tête j'arrive pas a comparer de chaine de caractere:
#include
#include <string.h>

char main(void)
{
char login[6];
cout << "\n\n\t\tLogin :";
cin >> login;
cout << "\n";

if(login == 'sfyler') {
cout << "\nBon login\n";
}
else
{
cout << "\nMauvais login\n";
}

return 0;
}

sa marche pas au nivo du if meme si je fait plutot un char *login.
A part faire varaible par variable genre if login[0] == 's' etc.. je vois pas quoi faire, aidez mloi svp

2 réponses

cs_aardman Messages postés 1905 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 17 septembre 2012 3
31 août 2003 à 18:17
Salut,
Une chaine se compare avec strcmp(...)

if(!strcmp(login, "sfyler")) // strcmp() retourne 0 si les chaines sont identiques
{
...
}
cs_751 Messages postés 68 Date d'inscription vendredi 3 mai 2002 Statut Membre Dernière intervention 6 juillet 2007
10 sept. 2003 à 13:31
Le temps est-il un cas particulier de l'espace ?

Mieux vaut utiliser la fonction strcmp() puisqu'il y'a une grande différence à comparer les "pointeurs " et comparer le contenu au niveau des adresses.
Rejoignez-nous