Aracılığıyla paylaş


char_traits::compare

Belirtilen sayıda iki dizelerdeki karakterler karşılaştırır.

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

Parametreler

  • _Str1
    Birbiriyle karşılaştırmak için ilk iki dize.

  • _Str2
    İkinci birbiriyle karşılaştırmak için iki dizeleri.

  • _Num
    Dizeleri karşılaştırmak için öğe sayısı.

Dönüş Değeri

İlk dize dize ikinci daha az olursa, iki dizeyi aynıysa, 0 negatif bir değer ya da ilk dizenin ikinci dize fazlaysa, pozitif bir değer.

Notlar

Öncelikle eşitlik için sınama öğeler dizeler arasında karşılaştırma yapılır ve sýradaki öðeler çifti eşit olmayan sınamaları, daha sonra bunlar için sınanır küçüktür.

İki dizeleri karşılaştırmak eşit aralık boyunca ama biri diğerinden daha uzun, sonra iki küçük kısadır, daha uzun.

Örnek

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

Örnek Çıktı

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

Gereksinimler

Başlık: <string>

Namespace: std

Ayrıca bkz.

Başvuru

char_traits Struct