Pre-requisite:
Before checking the examples of this tutorial, you have to check the g++ compiler is installed or not in the system. If you are using Visual Studio Code, then install the necessary extensions to compile the C++ source code to create the executable code. Here, the Visual Studio Code application has been used to compile and execute the C++ code.
Using Comparison Operator to compare string:
The most common way to compare strings in C++ is using the comparison operator. These are equal (==) and not equal (!=) operators. Create a C++ file with the following code to compare two string values using the comparison operator. According to the code, an URL address will be taken from the user and compared with other strings using an equal (==) operator. If the input value matches with any string of the ‘if’ condition, then the specific message will be printed; otherwise, the message of the ‘else’ part will be displayed.
#include<iostream>
usingnamespace std;
intmain() {
// Declare a string variable
string url_addr;
// Take a url address from the user
cout<>url_addr;
// Compare the input value with another string using equivalent operator
if(url_addr == "google.com")
cout<<"It is a search engine wensite."<<endl;
elseif(url_addr == "jooble.org")
cout<<"It is a job searching website."<<endl;
elseif(url_addr == "linuxhint.com")
cout<<"It is a blog website."<<endl;
else
cout<<"No information is added for this site."<<endl;
return0;
}
Output:
After executing the code, if the user typed ‘linuxhint.com‘ as input, the third ‘if’ condition will be returned True, and the following output will appear.
Using compare () function to compare string:
The compare () function compares two strings and returns 0 or 1 or -1 based on the matching result of the comparison. The meaning of the return values is given below.
- The function will return 0 when both comparing strings are equal.
- The function will return 1 when the first string is greater than the second string.
- The function will return -1 when the first string is less than the second string.
Syntax:
Create a C++ file with the following code to compare two string values with two input values using compare () function. The authentication of any user can be checked by comparing the values submitted by the users with the values of the authenticated user. This authentication process has been implemented in the following code. The valid email address and password have been stored into two string variables here. Next, these values have compared with the email address and the password taken from the user using compare () function. The logical AND operator has been used in the code to authenticate the user. The success message will be printed if both compare () functions return True. Otherwise, the failure message will be printed.
#include<iostream>
usingnamespace std;
intmain() {
//Initialialize two string variables
string email("admin@example.com");
string password("linuxhint");
//Declare two string variables
string user_email;
string user_password;
//Take the email address from the user
cout<>user_email;
//Take the password from the user
cout<>user_password;
//Check the username ans the password are valid or invalid
if (user_email.compare(email) == 0&&user_password.compare(password) == 0 )
cout<<"Authentication Successful."<<endl;
else
cout<<"Email or password is invalid."<<endl;
return0;
}
Output:
After executing the code, if the user typed ‘fahmida@gmail.com‘ as email address and ‘12345‘ as password, the third ‘if’ condition will be returned False, and the following output will appear.
After executing the code again, if the user typed ‘admin@example.com‘ as email address and ‘linuxhint‘ as password, the third ‘if’ condition will be returned True, and the following output will appear.
Using strcmp() function to compare string:
The strcmp() is another function to compare strings in C++. It returns true if both the comparing strings are equal. The input parameters taken by this function are different from the compare() function. The compare function takes a string value as a parameter, and the strcmp() function takes the char array as a parameter. The syntax of this function is given below.
Syntax:
Create a C++ file with the following code to compare two strings using the strcmp() function. Two character arrays of 100 elements have been declared in the code to store the string values taken by the users. The getline() function is used to store the user’s input into the char array variables. Next, the strcmp() function has used to check the input values are equal or not. If the function returns True, then the success message will be printed; otherwise, the failure message will be printed,
#include <cstring>
#include <iostream>
usingnamespace std;
intmain() {
//Delare two string variables
char chrData1[100], chrData2[100];
//Take the first string data
cout<<"Enter the first string:";
cin.getline(chrData1, 100);
//Take the second string data
cout<<"Enter the second string:";
cin.getline(chrData2, 100);
if (strcmp(chrData1, chrData2)==0)
printf("The strings are equal\n");
else
printf("The strings are not equal\n");
return0;
}
Output:
After executing the code, the string value, ‘hello‘ is given for both input values, and the following output will appear.
Conclusion:
Three ways to compare strings in C++ have been shown in this tutorial by using three simple examples. Both the uses of the comparison operator and the built-in functions for checking the equality of the strings have been described in this tutorial to help the new C++ programmers.
from Linux Hint https://ift.tt/2UX01vd
0 Comments