Comment comparer la chaîne en C ++

Comment comparer la chaîne en C ++
Comparaison des chaînes est une tâche très courante pour tout langage de programmation. Il est principalement utilisé pour valider les données, comme la vérification du nom d'utilisateur et du mot de passe des informations de connexion. La comparaison des chaînes peut être effectuée en utilisant un opérateur de comparaison ou en utilisant des fonctions intégrées. Deux fonctions de comparaison de chaînes utilisées en C ++ sont, strcmp () et comparer(). Le strcmp () est une fonction de bibliothèque de C pour comparer deux chaînes. Le Compare () est une fonction intégrée de C ++ pour comparer deux chaînes. Les moyens de comparer les chaînes à l'aide d'opérateurs de comparaison et de fonctions ont été expliqués dans ce tutoriel.

Prérequis:

Avant de vérifier les exemples de ce tutoriel, vous devez vérifier que le compilateur G ++ est installé ou non dans le système. Si vous utilisez le code Visual Studio, installez les extensions nécessaires pour compiler le code source C ++ pour créer le code exécutable. Ici, l'application de code Visual Studio a été utilisée pour compiler et exécuter le code C ++.

Utilisation de l'opérateur de comparaison pour comparer la chaîne:

La façon la plus courante de comparer les chaînes en C ++ est d'utiliser l'opérateur de comparaison. Ce sont égaux (==) et pas égaux (!=) opérateurs. Créez un fichier C ++ avec le code suivant pour comparer deux valeurs de chaîne à l'aide de l'opérateur de comparaison. Selon le code, une adresse URL sera tirée de l'utilisateur et comparée à d'autres chaînes à l'aide d'un opérateur égal (==). Si la valeur d'entrée correspond à une chaîne de la condition «si», le message spécifique sera imprimé; Sinon, le message de la partie «else» sera affiché.

#inclure
Utilisation de Namespace Std;
int main()
// Déclarer une variable de chaîne
chaîne url_addr;
// Prenez une adresse URL de l'utilisateur
couter<<"Enter the URL Address: ";
cin >> url_addr;
// Comparez la valeur d'entrée avec une autre chaîne en utilisant un opérateur équivalent
if (url_addr == "Google.com ")
couter<<"It is a search engine wensite."<else if (url_addr == "Jooble.org ")
couter<<"It is a job searching website."<else if (url_addr == "Linuxhint.com ")
couter<<"It is a blog website."<autre
couter<<"No information is added for this site."<retour 0;

Sortir:

Après avoir exécuté le code, si l'utilisateur a tapé 'linuxhint.comcomme entrée, la troisième condition «si» sera retournée Vrai, et la sortie suivante apparaîtra.

Utilisation de la fonction compare () pour comparer la chaîne:

La fonction compare () compare deux chaînes et renvoie 0 ou 1 ou -1 en fonction du résultat correspondant de la comparaison. La signification des valeurs de retour est donnée ci-dessous.

  • La fonction rendra 0 lorsque les deux chaînes de comparaison sont égales.
  • La fonction renvoie 1 lorsque la première chaîne est supérieure à la deuxième chaîne.
  • La fonction renvoie -1 lorsque la première chaîne est inférieure à la deuxième chaîne.

Syntaxe:

int string1.Comparez (String2)

Créez un fichier C ++ avec le code suivant pour comparer deux valeurs de chaîne avec deux valeurs d'entrée à l'aide de la fonction compare (). L'authentification de tout utilisateur peut être vérifiée en comparant les valeurs soumises par les utilisateurs avec les valeurs de l'utilisateur authentifié. Ce processus d'authentification a été implémenté dans le code suivant. L'adresse e-mail et le mot de passe valides ont été stockés en deux variables de chaîne ici. Ensuite, ces valeurs ont comparé à l'adresse e-mail et au mot de passe tiré de l'utilisateur en utilisant comparer () fonction. Le logique ET L'opérateur a été utilisé dans le code pour authentifier l'utilisateur. Le message de réussite sera imprimé si les deux fonctions compare () renvoient vrai. Sinon, le message d'échec sera imprimé.

#inclure
Utilisation de Namespace Std;
int main()
// initialialise deux variables de chaîne
Email de la chaîne ("Admin @ Exemple.com ");
Mot de passe de chaîne ("LinuxHint");
// Déclarer deux variables de chaîne
String user_email;
String user_password;
// Prenez l'adresse e-mail de l'utilisateur
couter<<"Enter your email address:";
cin >> user_email;
// Prenez le mot de passe de l'utilisateur
couter<<"Enter your password:";
cin >> user_password;
// Vérifiez le nom d'utilisateur et le mot de passe est valide ou non valide
if (user_email.comparer (e-mail) == 0 && user_password.comparer (mot de passe) == 0)
couter<<"Authentication Successful."<autre
couter<<"Email or password is invalid."<retour 0;

Sortir:

Après avoir exécuté le code, si l'utilisateur a tapé 'Fahmida @ gmail.com«Comme adresse e-mail et '12345«En tant que mot de passe, la troisième condition« si »sera retournée FAUX, et la sortie suivante apparaîtra.

Après avoir exécuté le code à nouveau, si l'utilisateur a tapé 'Admin @ Exemple.com«Comme adresse e-mail et 'linuxhint«En tant que mot de passe, la troisième condition« si »sera retournée Vrai, et la sortie suivante apparaîtra.

Utilisation de la fonction strcmp () pour comparer la chaîne:

Le strcmp () est une autre fonction pour comparer les chaînes en C++. Il revient vrai si les deux chaînes de comparaison sont égales. Les paramètres d'entrée pris par cette fonction sont différents de la fonction compare (). La fonction Compare prend une valeur de chaîne en tant que paramètre, et la fonction strcmp () prend le tableau char comme un paramètre. La syntaxe de cette fonction est donnée ci-dessous.

Syntaxe:

int strcmp (const char * str1, const char * str2);

Créez un fichier C ++ avec le code suivant pour comparer deux chaînes à l'aide de la fonction strcmp (). Deux tableaux de caractères de 100 éléments ont été déclarés dans le code pour stocker les valeurs de chaîne prises par les utilisateurs. Le getline () La fonction est utilisée pour stocker l'entrée de l'utilisateur dans les variables de tableau char-chari. Ensuite, le strcmp () La fonction a utilisée pour vérifier que les valeurs d'entrée sont égales ou non. Si la fonction renvoie Vrai, Ensuite, le message de réussite sera imprimé; Sinon, le message d'échec sera imprimé,

#inclure
#inclure
Utilisation de Namespace Std;
int main()
// Delate deux variables de cordes
char chrdata1 [100], chrdata2 [100];
// prenez les premières données de chaîne
couter<<"Enter the first string:";
cin.getline (chrdata1, 100);
// Prenez les données de la deuxième chaîne
couter<<"Enter the second string:";
cin.getline (chrdata2, 100);
if (strcmp (chrdata1, chrdata2) == 0)
printf ("Les chaînes sont égales \ n");
autre
printf ("Les chaînes ne sont pas égales \ n");
retour 0;

Sortir:

Après avoir exécuté le code, la valeur de la chaîne, 'Bonjour'est donné pour les deux valeurs d'entrée, et la sortie suivante apparaîtra.

Conclusion:

Trois façons de comparer les chaînes en C ++ ont été montrées dans ce tutoriel en utilisant trois exemples simples. Les utilisations de l'opérateur de comparaison et les fonctions intégrées pour vérifier l'égalité des chaînes ont été décrites dans ce tutoriel pour aider les nouveaux programmeurs C ++.