Udostępnij za pośrednictwem


char_traits::compare

Porównuje do określoną liczbę znaków w dwóch ciągów.

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

Parametry

  • _Str1
    Pierwsza z dwóch ciągów w porównaniu do siebie nawzajem.

  • _Str2
    Drugi z dwóch ciągów w porównaniu do siebie nawzajem.

  • _Num
    Liczba elementów w ciągach znaków ma być porównywana.

Wartość zwracana

Wartość ujemną jeżeli pierwszy ciąg jest mniej niż drugi ciąg znaków, 0, jeśli dwa ciągi znaków są równe lub wartość dodatnią, jeżeli pierwszy ciąg jest większa niż drugiego ciągu.

Uwagi

Element za elementem, najpierw badania na rzecz równości dokonywane jest porównanie między ciągów i następnie, jeśli dwa elementy w sekwencji badania nie równa, są testowane na mniej niż.

Jeśli dwa ciągi porównać równe w przedziale, ale jeden jest dłuższa niż inne, a następnie krótszego z dwóch jest mniejsza niż dłuższy.

Przykład

// 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;
}

Przykładowe dane wyjściowe

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

Wymagania

Nagłówek: <ciąg>

Przestrzeń nazw: std

Zobacz też

Informacje

char_traits — Struktura