Para comparar cadenas en el lenguaje de programación C, se utiliza la función strcmp() proporcionada por la biblioteca estándar string.h. Esta función compara dos cadenas de caracteres y devuelve un valor basado en la comparación lexicográfica de las cadenas.
La declaración de strcmp() es la siguiente:
int strcmp(const char *str1, const char *str2);
Donde str1 y str2 son las cadenas que se van a comparar. La función devuelve:
0: si las cadenas son iguales.
Un valor negativo: si str1 es menor lexicográficamente que str2.
Un valor positivo: si str1 es mayor lexicográficamente que str2.
Para un uso práctico de strcmp(), considere el siguiente ejemplo:
#include <stdio.h>
#include <string.h>
int main() {
char str1[] = ""hola"";
char str2[] = ""mundo"";
char str3[] = ""hola"";
// Comparando str1 y str2
if(strcmp(str1, str2) == 0) {
printf(""str1 y str2 son iguales.\n"");
} else {
printf(""str1 y str2 son diferentes.\n"");
}
// Comparando str1 y str3
if(strcmp(str1, str3) == 0) {
printf(""str1 y str3 son iguales.\n"");
} else {
printf(""str1 y str3 son diferentes.\n"");
}
return 0;
}
Este código comparará las cadenas str1 y str2, mostrando que son diferentes, y luego comparará str1 y str3, indicando que son iguales. Es importante destacar que strcmp() es sensible a mayúsculas y minúsculas. Para una comparación que ignore las diferencias entre mayúsculas y minúsculas, se puede usar strcasecmp() en sistemas basados en POSIX.
Para comparar cadenas en el lenguaje de programación C, se utiliza la función
strcmp()
proporcionada por la biblioteca estándarstring.h
. Esta función compara dos cadenas de caracteres y devuelve un valor basado en la comparación lexicográfica de las cadenas.La declaración de
strcmp()
es la siguiente:Donde
str1
ystr2
son las cadenas que se van a comparar. La función devuelve:str1
es menor lexicográficamente questr2
.str1
es mayor lexicográficamente questr2
.Para un uso práctico de
strcmp()
, considere el siguiente ejemplo:Este código comparará las cadenas
str1
ystr2
, mostrando que son diferentes, y luego compararástr1
ystr3
, indicando que son iguales. Es importante destacar questrcmp()
es sensible a mayúsculas y minúsculas. Para una comparación que ignore las diferencias entre mayúsculas y minúsculas, se puede usarstrcasecmp()
en sistemas basados en POSIX.