Comparar longitudes de cadenas es una función de uso común en la programación en C, porque puede indicarle qué cadena tiene más caracteres. Esta función es muy útil para ordenar datos. Comparar cadenas requiere una función especial; no use! = o ==.
Paso
Paso 1. Hay 2 tipos de funciones que puede utilizar para comparar cadenas en lenguaje C
Ambas funciones están incluidas en la biblioteca.
- strcmp (): esta función compara dos cadenas y devuelve el resultado de comparar el número de caracteres entre ellas.
- strncmp (): esta función es la misma que strcmp (), excepto que compara los primeros n} caracteres de la cadena. Esta función se considera más segura porque evita que el programa se detenga debido a una sobrecarga.
Paso 2. Ejecute el programa con las bibliotecas que necesita
Le recomendamos que ejecute y, junto con cualquier otra biblioteca que necesite para un programa en particular.
#incluir #incluir
Paso 3. Ejecute una función
En t. Esta es la forma más fácil de aprender esta función, porque devuelve el valor entero de una comparación del número de caracteres en dos cadenas.
#include #include int main () {}
Paso 4. Defina las dos cadenas que desea comparar
Por ejemplo, compararemos 2 cadenas de datos de tipo char que se han definido previamente. También puede definir el valor devuelto por esta función para que tenga el tipo de datos entero.
#include #include int main () {char * str1 = "manzana"; char * str2 = "naranja"; int ret; }
Paso 5. Agregue la función de comparación
Una vez que haya definido esas dos cadenas, puede agregar una función de comparación. Usaremos strncmp (), por lo que tendremos que asegurarnos de que el número de caracteres a medir esté configurado en la función.
#include #include int main () {char * str1 = "manzana"; char * str2 = "naranja"; int ret; ret = strncmp (str1, str2, 6); / * Esta función comparará ambas '' cadenas '' de 6 caracteres * /}
Paso 6. Utilice declaraciones
Si … Más para hacer la comparación. Después de agregar una función a su programa, puede usar una declaración para mostrar qué cadena tiene más caracteres. strncmp () devolverá 0 si las cadenas tienen el mismo número de caracteres, un número positivo si str1 es más largo y un número negativo si str2 es más largo.
#include #include int main () {char * str1 = "manzana"; char * str2 = "naranja"; int ret; ret = strncmp (str1, str2, 6); if (ret> 0) {printf ("str1 es más largo"); } else if (ret <0) {printf ("str2 es más largo"); } else {printf ("Ambas cadenas tienen la misma longitud"); } retorno (0); }