Comparando objetos de string usando operadores relacionales en C++

Si las strings se comparan usando operadores relacionales , sus caracteres se comparan lexicográficamente de acuerdo con los rasgos de carácter actuales, lo que significa que comienza la comparación carácter por carácter a partir del primer carácter hasta que los caracteres en ambas strings sean iguales o se encuentre un carácter NULO.

  • Parámetros: se requieren dos strings para comparar. A la izquierda, uno que se está comparando ya la derecha, otra string con respecto a la cual se va a realizar la comparación.
  • Tipo de devolución: el operador relacional devuelve un valor verdadero o falso, es decir, devuelven valores booleanos, verdadero si la comparación correspondiente se mantiene, falso en caso contrario.

Lista de Operadores Relacionales:

  • > : Mayor que
  • < : Menos que
  • == : Igual a
  • != : No igual a
  • >= : Mayor que e igual a
  • <= : Menor que e igual a

Condiciones importantes:

  1. s1 < s2 : una string s1 es más pequeña que una string s2, si la longitud de s1 es más corta que s2 o el primer carácter no coincidente es más pequeño.
  2. s1 > s2: una string s1 es mayor que la string s2, si la longitud de s1 es más larga que la de s2 o el primer carácter no coincidente es más grande.
  3. < = y > = tienen casi la misma implementación con la característica adicional de ser iguales también.
  4. Si después de comparar lexicográficamente ambas strings se encuentran iguales, entonces se dice que son iguales.
  5. Si sigue alguno de los puntos del 1 al 3, se dice que las strings son desiguales.
// CPP code to implement relational 
// operators on String objects
#include<iostream>
using namespace std;
   
void relational_operation(string s1, string s2)
{
    string s3 = s1 + s2;
       
    if(s1 != s2)
        cout << s1 << " is not equal to " << s2 << endl;
  
    if(s1 > s2)
        cout << s1 << " is greater than " << s2 << endl;
  
    else if(s1 < s2)
        cout << s1 << " is smaller than " << s2 << endl;
  
    if(s3 == s1 + s2)
        cout << s3 << " is equal to " << s1 + s2 << endl;
          
}
   
// Main function
int main()
{
    string s1("Geeks");
    string s2("forGeeks");
    relational_operation(s1, s2);
       
  return 0; 
}

Producción:

Geeks is not equal to forGeeks
Geeks is smaller than forGeeks
GeeksforGeeks is equal to GeeksforGeeks

Este artículo es una contribución de Sakshi Tiwari . Si le gusta GeeksforGeeks (¡sabemos que le gusta!) y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.

Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *