std:: strcmp
|
Definido en el encabezado
<cstring>
|
||
|
int
strcmp
(
const
char
*
lhs,
const
char
*
rhs
)
;
|
||
Compara dos cadenas de bytes terminadas en nulo lexicográficamente.
El signo del resultado es el signo de la diferencia entre los valores del primer par de caracteres (ambos interpretados como unsigned char ) que difieren en las cadenas que se están comparando.
El comportamiento es indefinido si lhs o rhs no son punteros a cadenas terminadas en nulo.
Contenidos |
Parámetros
| lhs, rhs | - | punteros a las cadenas de bytes terminadas en nulo a comparar |
Valor de retorno
Valor negativo si lhs aparece antes que rhs en orden lexicográfico.
Cero si lhs y rhs son iguales.
Valor positivo si lhs aparece después de rhs en orden lexicográfico.
Ejemplo
#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'; }
Salida:
Garfield Heathcliff Hobbes Snagglepuss
Véase también
|
compara un número determinado de caracteres de dos cadenas
(función) |
|
|
compara dos cadenas anchas
(función) |
|
|
compara dos búferes
(función) |
|
|
compara dos cadenas de acuerdo con la configuración regional actual
(función) |
|
|
Documentación de C
para
strcmp
|
|