strcmp
|
Défini dans l'en-tête
<string.h>
|
||
|
int
strcmp
(
const
char
*
lhs,
const
char
*
rhs
)
;
|
||
Compare deux chaînes d'octets terminées par un caractère nul de manière lexicographique.
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 n'est pas défini si lhs ou rhs ne sont pas des pointeurs vers des chaînes d'octets 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.
Notes
Cette fonction n'est pas sensible aux paramètres régionaux, contrairement à strcoll et strxfrm .
Exemple
#include <stdio.h> #include <string.h> void demo(const char* lhs, const char* rhs) { const int rc = strcmp(lhs, rhs); const char* rel = rc < 0 ? "precedes" : rc > 0 ? "follows" : "equals"; printf("[%s] %s [%s]\n", lhs, rel, rhs); } int main(void) { const char* string = "Hello World!"; demo(string, "Hello!"); demo(string, "Hello"); demo(string, "Hello there"); demo("Hello, everybody!" + 12, "Hello, somebody!" + 11); }
Sortie :
[Hello World!] precedes [Hello!] [Hello World!] follows [Hello] [Hello World!] precedes [Hello there] [body!] equals [body!]
Références
- Norme C23 (ISO/CEI 9899:2024) :
-
- 7.24.4.2 La fonction strcmp (p: TBD)
- Norme C17 (ISO/CEI 9899:2018) :
-
- 7.24.4.2 La fonction strcmp (p: TBD)
- Norme C11 (ISO/CEI 9899:2011) :
-
- 7.24.4.2 Fonction strcmp (p: 365-366)
- Norme C99 (ISO/IEC 9899:1999) :
-
- 7.21.4.2 La fonction strcmp (p: 328-329)
- Norme C89/C90 (ISO/IEC 9899:1990) :
-
- 4.11.4.2 La fonction strcmp
Voir aussi
|
compare un certain nombre de caractères de deux chaînes
(fonction) |
|
|
(C95)
|
compare deux chaînes larges
(fonction) |
|
compare deux tampons
(fonction) |
|
|
compare deux chaînes conformément à la locale actuelle
(fonction) |
|
|
Documentation C++
pour
strcmp
|
|