std:: strcmp
|
Défini dans l'en-tête
<cstring>
|
||
|
int
strcmp
(
const
char
*
lhs,
const
char
*
rhs
)
;
|
||
Compare lexicographiquement deux chaînes d'octets terminées par un caractère nul.
Le signe du résultat est le signe de la différence entre les valeurs de la première paire de caractères (tous deux interprétés comme unsigned char ) qui diffèrent dans les chaînes comparées.
Le comportement est indéfini si lhs ou rhs ne sont pas des pointeurs vers des chaînes de caractères terminées par un caractère nul.
Table des matières |
Paramètres
| lhs, rhs | - | pointeurs vers les chaînes d'octets terminées par un caractère nul à comparer |
Valeur de retour
Valeur négative si lhs apparaît avant rhs dans l'ordre lexicographique.
Zéro si lhs et rhs sont égaux.
Valeur positive si lhs apparaît après rhs dans l'ordre lexicographique.
Exemple
#include <algorithm> #include <cstring> #include <iostream> #include <vector> int main() { std::vector<const char*> cats{"Heathcliff", "Snagglepuss", "Hobbes", "Garfield"}; std::sort(cats.begin(), cats.end(), [](const char* strA, const char* strB) { return std::strcmp(strA, strB) < 0; }); for (const char* cat : cats) std::cout << cat << '\n'; }
Sortie :
Garfield Heathcliff Hobbes Snagglepuss
Voir aussi
|
compare un certain nombre de caractères de deux chaînes
(fonction) |
|
|
compare deux chaînes larges
(fonction) |
|
|
compare deux tampons
(fonction) |
|
|
compare deux chaînes selon la locale actuelle
(fonction) |
|
|
Documentation C
pour
strcmp
|
|