Compare dos cadenas en el lenguaje de programación C.

Autor: Judy Howell
Fecha De Creación: 27 Mes De Julio 2021
Fecha De Actualización: 10 Mayo 2024
Anonim
43. Programación en C++ || Cadenas || Comparar cadenas - Función strcmp()
Video: 43. Programación en C++ || Cadenas || Comparar cadenas - Función strcmp()

Contenido

La comparación de longitud de cadena es una función de uso común en el lenguaje de programación C, porque le permite averiguar qué cadena contiene más caracteres. Esto es muy útil para ordenar datos. La comparación de cadenas requiere una función especial; así que no uses: != o ==.

Al paso

  1. Hay dos funciones que le permiten comparar cadenas en C. Ambos están incluidos en el string.h>biblioteca de código.
    • strcmp () - Esta función compara dos cadenas y devuelve la diferencia en el número de caracteres.
    • strncmp () - Esto también se aplica a strcmp (), excepto que este es el primero norte compara personajes. Se considera más seguro ya que ayuda a prevenir bloqueos por desbordamiento.
  2. Ejecute el programa con las bibliotecas necesarias. Tienes ambas bibliotecas stdio.h> y string.h> necesario, junto con otras bibliotecas que pueda necesitar para su programa.

    #include stdio.h> [[Imagen: Compare dos cadenas en la programación en C Paso 1 Versión 4.webp | centro]] #include string.h>

  3. Empiece uno.En tfunción. Esta es la forma más fácil de aprender esta función, ya que devuelve un número entero que compara la longitud de las dos cadenas.

    [[Imagen: Comparar dos cadenas en la programación C Paso 2 Versión 4.webp | centro]] #include stdio.h> [[Imagen: Comparar dos cadenas en la programación C Paso 3 Versión 3.webp | centro]] #incluir cadena. h> int main () {}

  4. Decide qué dos cadenas quieres comparar. En este ejemplo comparamos dos datos carbonizarse instrumentos de cuerda. También debe determinar el valor de retorno como un número entero.

    [[Imagen: Compare dos cadenas en la programación en C Paso 4 Versión 4.webp | centro]] #include stdio.h> [[Imagen: Compare dos cadenas en la programación en C Paso 5 Versión 4.webp | centro]] #include string. h> int main () {char * str1 = "manzana"; char * str2 = "naranja"; int ret;}

  5. Agregue la función de comparación. Ahora que ha definido dos cadenas, puede agregar la función de comparación. Nosotros vamos strncmp () por lo que debemos asegurarnos de que el número de caracteres a medir esté configurado dentro de la función.

    [[Imagen: Compare dos cadenas en la programación en C Paso 6 Versión 4.webp | centro]] #include stdio.h> #include string.h> int main () {char * str1 = "apple"; char * str2 = "naranja"; int ret; ret = strncmp (str1, str2, 11); / * Compara las dos cadenas de hasta 11 caracteres * /}

  6. Usar.Si ... Elsepara realizar la comparación. Ahora que hemos creado la función, use Si ... Else para determinar qué cuerda es más larga. strncmp () da 0 como resultado, si las cadenas tienen la misma longitud, un número positivo si str1 es más largo y un número negativo si str2 es más largo.

    #include stdio.h> #include string.h> int main () {char * str1 = "apple"; char * str2 = "naranja"; int ret; ret = strncmp (str1, str2, 11); if (ret> 0) {printf ("str1 es más largo"); } else if (ret 0) {printf ("str2 es más largo"); } else {printf ("Las dos cadenas son iguales"); } retorno (0); }

Advertencias

  • Recuerde que el valor de retorno es 0 si las cadenas son iguales. Esto puede resultar confuso porque 0 también es el valor de FALSE.