Partager via


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

Voir aussi

Référence

char_traits, struct