char_traits::compare
Compare jusqu'à un nombre spécifié de caractères dans deux chaînes.
static int compare(
const char_type* _Str1,
const char_type* _Str2,
size_t _Num
);
Paramètres
_Str1
Le premier de deux chaînes à comparer entre eux._Str2
Le second de deux chaînes à comparer entre eux._Num
Nombre d'éléments dans les chaînes à comparer.
Valeur de retour
Une valeur négative si la première chaîne est inférieure à la deuxième chaîne, 0 si les deux chaînes sont égales, ou une valeur positive si la première chaîne est supérieure à la deuxième chaîne.
Notes
Comparaison entre les chaînes est effectué élément dans l'élément, le premier testant l'égalité puis, si une paire d'éléments dans des tests de séquence non égal, il est testée pour inférieur à.
Si deux chaînes comparaison égale sur une plage mais il est plus longue que l'autre, le plus court valeur est inférieure à la plus longue.
Exemple
// 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;
}
Résultat de l'exemple
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
Configuration requise
En-tête : <chaîne>
Espace de noms : std