Como comparar string em c ++

Como comparar string em c ++
Comparar strings é uma tarefa muito comum para qualquer linguagem de programação. É usado principalmente para validar os dados, como verificar o nome de usuário e a senha das informações de login. A comparação de string pode ser feita usando um operador de comparação ou usando funções internas. Duas funções de comparação de string usadas em C ++ são, strcmp () e comparar(). O strcmp () é uma função da biblioteca de C para comparar duas cordas. O Compare () é uma função interna de C ++ para comparar duas strings. As maneiras de comparar strings usando operadores de comparação e funções foram explicadas neste tutorial.

Pré-requisito:

Antes de verificar os exemplos deste tutorial, você deve verificar se o compilador G ++ está instalado ou não no sistema. Se você estiver usando o código do Visual Studio, instale as extensões necessárias para compilar o código -fonte C ++ para criar o código executável. Aqui, o aplicativo de código do Visual Studio foi usado para compilar e executar o código C ++.

Usando o operador de comparação para comparar a string:

A maneira mais comum de comparar strings no C ++ é usar o operador de comparação. Estes são iguais (==) e não são iguais (!=) Operadores. Crie um arquivo C ++ com o seguinte código para comparar dois valores de string usando o operador de comparação. De acordo com o código, um endereço de URL será retirado do usuário e comparado com outras strings usando um operador igual (==). Se o valor de entrada corresponder a qualquer string da condição 'if', a mensagem específica será impressa; Caso contrário, a mensagem da parte 'else' será exibida.

#incluir
usando namespace std;
int main ()
// Declare uma variável de string
String url_addr;
// Pegue um endereço de URL do usuário
cout<<"Enter the URL Address: ";
CIN >> url_addr;
// Compare o valor de entrada com outra string usando operador equivalente
if (url_addr == "google.com ")
cout<<"It is a search engine wensite."<senão se (url_addr == "Jooble.org ")
cout<<"It is a job searching website."<caso contrário, if (url_addr == "linuxhint.com ")
cout<<"It is a blog website."<outro
cout<<"No information is added for this site."<retornar 0;

Saída:

Depois de executar o código, se o usuário digitar 'Linuxhint.com'Como entrada, a terceira condição' se 'será devolvida Verdadeiro, e a seguinte saída será exibida.

Usando a função compare () para comparar string:

A função compare () compara duas cordas e retorna 0 ou 1 ou -1 com base no resultado correspondente da comparação. O significado dos valores de retorno é dado abaixo.

  • A função retornará 0 quando as duas seqüências de seqüências de comparação forem iguais.
  • A função retornará 1 quando a primeira string for maior que a segunda sequência.
  • A função retornará -1 quando a primeira string for menor que a segunda string.

Sintaxe:

int string1.Compare (String2)

Crie um arquivo C ++ com o seguinte código para comparar dois valores de string com dois valores de entrada usando a função compare (). A autenticação de qualquer usuário pode ser verificada comparando os valores enviados pelos usuários com os valores do usuário autenticado. Este processo de autenticação foi implementado no código a seguir. O endereço de email e a senha válidos foram armazenados em duas variáveis ​​de string aqui. Em seguida, esses valores compararam com o endereço de e -mail e a senha retirada do usuário usando comparar () função. O lógico E O operador foi usado no código para autenticar o usuário. A mensagem de sucesso será impressa se as duas funções comparadas () retornar. Caso contrário, a mensagem de falha será impressa.

#incluir
usando namespace std;
int main ()
// inicialize duas variáveis ​​de string
string email ("[email protected] ");
String senha ("Linuxhint");
// declarar duas variáveis ​​de string
string user_email;
string user_password;
// Pegue o endereço de e -mail do usuário
cout<<"Enter your email address:";
CIN >> user_email;
// Pegue a senha do usuário
cout<<"Enter your password:";
CIN >> user_password;
// Verifique o nome de usuário e a senha é válida ou inválida
if (user_email.compare (email) == 0 && user_password.Compare (senha) == 0)
cout<<"Authentication Successful."<outro
cout<<"Email or password is invalid."<retornar 0;

Saída:

Depois de executar o código, se o usuário digitar '[email protected]'Como endereço de e -mail e'12345'Como senha, a terceira condição' se 'será devolvida Falso, e a seguinte saída será exibida.

Depois de executar o código novamente, se o usuário digitar '[email protected]'Como endereço de e -mail e'Linuxhint'Como senha, a terceira condição' se 'será devolvida Verdadeiro, e a seguinte saída será exibida.

Usando a função strcmp () para comparar string:

O strcmp () é outra função para comparar strings em c++. Ele retorna verdadeiro se as duas seqüências de comparação forem iguais. Os parâmetros de entrada tirados por esta função são diferentes da função compare (). A função de comparação assume um valor de string como um parâmetro, e a função strcmp () toma a matriz de char como um parâmetro. A sintaxe desta função é dada abaixo.

Sintaxe:

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

Crie um arquivo C ++ com o seguinte código para comparar duas strings usando a função strcmp (). Duas matrizes de caracteres de 100 elementos foram declaradas no código para armazenar os valores da string tomados pelos usuários. O Obter linha() A função é usada para armazenar a entrada do usuário nas variáveis ​​de matriz char. Em seguida, o strcmp () a função usada para verificar os valores de entrada são iguais ou não. Se a função retornar Verdadeiro, então a mensagem de sucesso será impressa; Caso contrário, a mensagem de falha será impressa,

#incluir
#incluir
usando namespace std;
int main ()
// DeLare duas variáveis ​​de string
Char Chrdata1 [100], Chrdata2 [100];
// Pegue os dados da primeira string
cout<<"Enter the first string:";
CIN.getLine (Chrdata1, 100);
// Pegue os dados da Segunda String
cout<<"Enter the second string:";
CIN.getLine (Chrdata2, 100);
if (strcmp (crdata1, chrdata2) == 0)
printf ("As cordas são iguais \ n");
outro
printf ("As cordas não são iguais \ n");
retornar 0;

Saída:

Depois de executar o código, o valor da string, 'olá'é dado para ambos os valores de entrada, e a seguinte saída será exibida.

Conclusão:

Três maneiras de comparar strings em C ++ foram mostradas neste tutorial usando três exemplos simples. Tanto os usos do operador de comparação quanto as funções internas para verificar a igualdade das strings foram descritas neste tutorial para ajudar os novos programadores C ++.