std::basic_string::compare
De cppreference.com
[] |
This page has been machine-translated from the English version of the wiki using Google Translate.
The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
<metanoindex/>
<tbody> </tbody> int compare( const basic_string& str ) const; |
(1) | |
int compare( size_type pos1, size_type count1, const basic_string& str ) const; |
(2) | |
int compare( size_type pos1, size_type count1, const basic_string& str, size_type pos2, size_type count2 ) const; |
(3) | |
int compare( const CharT* s ) const noexcept; |
(4) | |
int compare( size_type pos1, size_type count1, const CharT* s ) const; |
(5) | |
int compare( size_type pos1, size_type count1, const CharT* s, size_type count2 ) const; |
(6) | |
Compare deux squences de caractres .
Original:
Compares two character sequences.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
1)
Compare cette chane str'. Tout d'abord, calcule le nombre de caractres comparer, comme par
size_type rlen = std::min(size(), str.size()). Compare ensuite en appelant Traits::compare(data(), str.data(), rlen). Pour les chanes standards de cette fonction effectue caractre par caractre comparaison lexicographique. Si le rsultat est gal zro (les chanes sont gales ce jour), leurs tailles sont compars comme suit:Original:
Compares this string to str. First, calculates the number of characters to compare, as if by
size_type rlen = std::min(size(), str.size()). Then compares by calling Traits::compare(data(), str.data(), rlen). For standard strings this function performs character-by-character lexicographical comparison. If the result is zero (the strings are equal so far), then their sizes are compared as follows:The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
| Condition | Result | Return value | |
|---|---|---|---|
Traits::compare(data, arg, rlen) < 0
|
data is less than arg | <0
| |
Traits::compare(data, arg, rlen) == 0
|
size(data) < size(arg)
|
data is less than arg | <0
|
size(data) == size(arg)
|
data is equal to arg | 0
| |
size(data) > size(arg)
|
data is greater than arg | >0
| |
Traits::compare(data, arg, rlen) > 0
|
data is greater than arg | >0
| |
2)
Compare une chane
[pos1, pos1+count1) de cette chane str' comme par basic_string(*this, pos1, count1).compare(str)Original:
Compares a
[pos1, pos1+count1) substring of this string to str as if by basic_string(*this, pos1, count1).compare(str)The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
3)
Compare une chane
[pos1, pos1+count1) de cette chane une chane de [pos2, pas2+count2)' str comme par basic_string(*this, pos1, count1).compare(basic_string(str, pos2, count2))Original:
Compares a
[pos1, pos1+count1) substring of this string to a substring [pos2, pas2+count2) of str as if by basic_string(*this, pos1, count1).compare(basic_string(str, pos2, count2))The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
4)
Compare cette chane au dbut termine par NULL squence de caractres par le caractre point par s', comme par
compare(basic_string(s))Original:
Compares this string to the null-terminated character sequence beginning at the character pointed to by s, as if by
compare(basic_string(s))The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
5)
Compare une chane
[pos1, pos1+count1) de cette chane au dbut termine par NULL squence de caractres par le caractre point par s', comme par basic_string(*this, pos, count1).compare(basic_string(s))Original:
Compares a
[pos1, pos1+count1) substring of this string to the null-terminated character sequence beginning at the character pointed to by s, as if by basic_string(*this, pos, count1).compare(basic_string(s))The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
6)
Compare une chane
[pos1, pos1+count1) de cette chane de caractres count2 premiers du tableau de caractres dont le premier caractre est soulign par l', comme par basic_string(*this, pos, count1).compare(basic_string(s, count2)). (Remarque: les caractres de s s+count2 peuvent inclure des caractres nuls))Original:
Compares a
[pos1, pos1+count1) substring of this string to the first count2 characters of the character array whose first character is pointed to by s, as if by basic_string(*this, pos, count1).compare(basic_string(s, count2)). (Note: the characters from s to s+count2 may include null characters))The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Paramtres
| str | - | autre chane comparer
Original: other string to compare to The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
| s | - | pointeur vers la chane de caractres comparer
Original: pointer to the character string to compare to The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
| count1 | - | nombre de caractres de cette chane compore
Original: number of characters of this string to compore The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
| pos1 | - | position du premier caractre de cette chane comparer
Original: position of the first character in this string to compare The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
| count2 | - | nombre de caractres de la chane donne compore
Original: number of characters of the given string to compore The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
| pos2 | - | la position du premier caractre de la chane donne comparer
Original: position of the first character of the given string to compare The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
Retourne la valeur
valeur ngative si cette chane est moins de la squence de caractres autre, zro si les deux squences de caractres sont gaux, la valeur positive si cette chane est plus que la squence de caractres autre .
Original:
negative value if this string is less than the other character sequence, zero if the both character sequences are equal, positive value if this string is greater than the other character sequence.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Exceptions
1)
2-6)
Peut lever les exceptions lances par les constructeurs
basic_string correspondantes .Original:
May throw the exceptions thrown by the corresponding
basic_string constructors.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Mise en uvre possible
template<class CharT, class Traits, class Alloc>
int basic_string<CharT, Traits, Alloc>::compare(const std::basic_string& str) const noexcept
{
size_type lhs_sz = size();
size_type rhs_sz = str.size();
int result = traits_type::compare(data(), str.data(), std::min(lhs_sz, rhs_sz));
if (result != 0)
return result;
if (lhs_sz < rhs_sz)
return -1;
if (lhs_sz > rhs_sz)
return 1;
return 0;
}
|
Exemple
| This section is incomplete Reason: no example |
Voir aussi
compare lexicographiquement deux chanes Original: lexicographically compares two strings The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (fonction gnrique) | |
renvoie une sous-chane Original: returns a substring The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (fonction membre publique) | |
dfinit comparaison lexicographique et le hachage de chanes Original: defines lexicographical comparison and hashing of strings The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (classe gnrique) | |
compare deux chanes en fonction de la localisation en cours Original: compares two strings in accordance to the current locale The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (fonction) | |