La función strcmp () en C ++ compara dos cadenas de terminación nulas. La comparación se realiza de forma lexicográfica.
prototipo strcmp ()
int strcmp (const char * lhs, const char * rhs);
La strcmp()
función toma dos argumentos: lhs y rhs. Compara el contenido de lhs y rhs lexicográficamente. El signo del resultado es el signo de diferencia entre los primeros pares de caracteres que difieren en lhs y rhs.
El comportamiento de strcmp()
no está definido si lhs o rhs no apuntan a cadenas terminadas en nulo.
Se define en el archivo de encabezado "> archivo de encabezado.
Parámetros strcmp ()
lhs and rhs
: Puntero a las cadenas terminadas en nulo para comparar.
strcmp () Valor de retorno
La función strcmp () devuelve:
- valor positivo si el primer carácter diferente en lhs es mayor que el carácter correspondiente en rhs.
- valor negativo si el primer carácter diferente en lhs es menor que el carácter correspondiente en rhs.
- 0 si hs y rhs son iguales.
Ejemplo: cómo funciona la función strcmp ()
#include #include using namespace std; void display(char *lhs, char *rhs, int result) ( if(result> 0) cout << rhs << " precedes " << lhs << endl; else if (result < 0) cout << lhs << " precedes " << rhs << endl; else cout << lhs << " and " << rhs << " are same" << endl; ) int main() ( char lhs() = "Armstrong"; char rhs() = "Army"; int result; result = strcmp(lhs,rhs); display(lhs,rhs,result); result = strcmp(lhs,lhs); display(lhs,lhs,result); return 0; )
Cuando ejecute el programa, la salida será:
Armstrong precede al ejército Armstrong y Armstrong son iguales