Bonsoir à tous,

J'ai un soucis (encore ?) pour comparer 2 chaînes de caractères.

En effet, j'ai rentré "en dur" dans une classe, un nom et via une autre méthode j'entre grâce à une saisie clavier (cin) un nom.
Je veux comparer ces deux chaînes de caractères.

J'ai essayé plusieurs méthodes de comparaison comme la méthode strcmp(chaine1 == chaine2) ou encore chaine1 == chaine2.

Donc il est possible que mon code n'aille pas, ou bien que je m'y prenne mal pour les comparer...


Pourriez-vous m'aider ?

Je vous colle les petits morceaux de code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
/* Classe Coordonnees */
 
class Coordonnees
{
    private:
            string nom;
            string prenom;
            string adresse;
            string num_tel;
 
    public:
            Coordonnees()
            {
                nom = " ";
                prenom = " ";
                adresse = " ";
                num_tel = " ";
            }
 
            void saisie(string n, string p, string a, string nt)
            {
                nom = n;
                prenom = p;
                adresse = a;
                num_tel = nt;
            }
 
            void saisie()
            {
                cout << "Entrez le nom de votre contact : ";
                cin >> nom;
                cout << endl;
                cout << "Entrez le prénom de votre contact : ";
                cin >> prenom;
                cout << endl;
                cout << "Entrez son adresse : ";
                cin >> adresse;
                cout << endl;
                cout << "Entrez son numéro de téléphone : ";
                cin >> num_tel;
                cout << endl;
            }
 
            void affichage()
            {
                cout << "Votre contact est " << nom << " " << prenom << " il habite " << adresse << " et on peut le joindre au " << num_tel << endl;
            }
 
            string getNom()
            {
                return nom;
            }
 
            string getPrenom()
            {
                return prenom;
            }
 
            string getAdresse()
            {
                return adresse;
            }
 
            string getNum()
            {
                return num_tel;
            }
};


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
/* Fonction recherche, comparaison des deux chaines */
 
void recherche()
            {
                int i, j;
                string gnom;                string gprenom;
                string n;
                string p;
 
                cout << "Entrez le prénom de la personne à rechercher : ";
                cin >> p;
                cout << "Entrez le nom de la personne à rechercher : ";
                cin >> n;
 
                for(i = 0; i < 26; i++)
                {
                    for(j = 0; j < 10; j++)
                    {
                        gnom = coordonnees[i][j].getNom();
                        gprenom = coordonnees[i][j].getPrenom();
 
                        if(gnom == n)
                        {
                            if(gprenom == p)
                            {
                                cout << "VROUM" << endl;
                            }
                        }
                    }
                }
            }