char_traits::compare
Confronta fino a un determinato numero di caratteri in due stringhe.
static int compare(
const char_type* _Str1,
const char_type* _Str2,
size_t _Num
);
Parametri
_Str1
Il primo di due stringhe da confrontare tra loro._Str2
Il secondo di due stringhe da confrontare tra loro._Num
Il numero di elementi in stringhe da confrontare.
Valore restituito
Un valore negativo se la prima stringa è minore della stringa, 0 se le due stringhe sono uguali, o un valore positivo se la prima stringa è maggiore della seconda.
Note
Le stringhe sono raffrontato all'elemento, primo test dell'uguaglianza quindi, se una coppia di elementi nei test di sequenza non uguali, esso viene verificata per minore.
Se due stringhe il confronto di uguale in un intervallo ma uno è più lungo rispetto all'altro, il più breve dei due è inferiore a quello più lungo.
Esempio
// 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;
}
Esempio di output
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
Requisiti
Intestazione: <string>
Spazio dei nomi: std