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: <string>
Espacio de nombres: std