Share via


char_traits::compare

Compara hasta un número especificado de caracteres de dos cadenas.

static int compare(
   const char_type* _Str1, 
   const char_type* _Str2, 
   size_t _Num 
);

Parámetros

  • _Str1
    El primer de dos cadenas que se van a comparar entre sí.

  • _Str2
    El segundo de dos cadenas que se van a comparar entre sí.

  • _Num
    El número de elementos en las cadenas que se van a comparar.

Valor devuelto

Un valor negativo si la primera cadena es menor que la segunda cadena, 0 si las dos cadenas son iguales, o un valor positivo si la primera cadena es mayor que la segunda.

Comentarios

Comparación entre cadenas se crea elemento por elemento, primera prueba de igualdad y a continuación, si un par de elementos en las pruebas de la secuencia no iguales, se prueba para menor que.

Si dos cadenas comparan el igual en un intervalo pero uno es mayor que el otro, el menor de los dos es menor que el mayor.

Ejemplo

// char_traits_compare.cpp
// compile with: /EHsc
#include <string>
#include <iostream>

int main() {
   using namespace std;

   char_traits<char>::char_type* s1 = "CAB";
   char_traits<char>::char_type* s2 = "ABC";
   char_traits<char>::char_type* s3 = "ABC";
   char_traits<char>::char_type* s4 = "ABCD";
   
   cout << "The string s1 is: " << s1 << endl;
   cout << "The string s2 is: " << s2 << endl;
   cout << "The string s3 is: " << s3 << endl;
   cout << "The string s4 is: " << s4 << endl;

   int comp1, comp2, comp3, comp4;
   comp1 = char_traits<char>::compare ( s1 , s2 , 2 );
   comp2 = char_traits<char>::compare ( s2 , s3 , 3 );
   comp3 = char_traits<char>::compare ( s3 , s4 , 4 );
   comp4 = char_traits<char>::compare ( s4 , s3 , 4 );
   cout << "compare ( s1 , s2 , 2 ) = " << comp1 << endl;
   cout << "compare ( s2 , s3 , 3 ) = " << comp2 << endl;
   cout << "compare ( s3 , s4 , 4 ) = " << comp3 << endl;
   cout << "compare ( s4 , s3 , 4 ) = " << comp4 << endl;
}

Resultados del ejemplo

The string s1 is: CAB
The string s2 is: ABC
The string s3 is: ABC
The string s4 is: ABCD
compare ( s1 , s2 , 2 ) = 1
compare ( s2 , s3 , 3 ) = 0
compare ( s3 , s4 , 4 ) = -1
compare ( s4 , s3 , 4 ) = 1

Requisitos

encabezado: <cadena>

espacio de nombres: std

Vea también

Referencia

char_traits Struct