MEMCMP en C

MEMCMP en C
La memoria es la parte principal de cualquier programa cuando tiene una mayor cantidad de código en su herramienta. Igual a ese, el lenguaje C es muy útil para comparar el tamaño de la memoria de más de 1 variable en el código. Se le ocurre la función "MEMCMP" para realizar esta sola tarea I.mi., Compare el tamaño de la memoria de dos variables, cadenas.

Verificará si los caracteres "n" iniciales de la variable indicados como la primera cadena son menos que, equivalentes o mayores que los caracteres "n" iniciales de la otra variable i.mi., cadena. El método MEMCMP devuelve un entero negativo, cero o positivo en el idioma C. Este artículo se ha utilizado para comprender la función memcmp () de C en el código. Por lo tanto, comencemos con la terminal.

Ejemplo 01:

Hagamos un nuevo comienzo con la creación de un archivo C en el Ubuntu 20.04 carpeta de inicio. Utilice la instrucción táctil de Ubuntu para este propósito. Hemos estado nombrando este archivo como "MEMCMP.C". Ahora, debe abrirse en algún editor de Linux para crear código dentro de él i.mi., vim, gnu nano y editor de texto.

Hemos estado preferiendo que el editor nano abra y cree código dentro de él. Ambos comandos se han mostrado en la captura de pantalla a continuación.

Comencemos nuestro primer código de ejemplo para C para utilizar la función MEMCMP () en el código. Para comenzar este código, debemos requerir algunos archivos de encabezado C al comienzo para que nuestro código funcione. Esas bibliotecas incluyen "Stdio.h "y" cadena.h "usando la palabra clave" #include ". El trabajo general se realizará en la función Main () para la comparación de dos valores de cadena.

Se ha declarado un entero "n". Las matrices de tipo de dos caracteres o los valores de cadena "A" y "B" del tamaño 10 se han inicializado con valores de cadena. Los valores para ambas matrices de caracteres tienen la misma longitud pero diferente en el texto I.mi., Capital y letras pequeñas de la misma palabra.

La función memcmp () ha estado utilizando las cadenas A y B dentro de ella para comparar hasta las primeras 5 letras de ambas cadenas. El valor de retorno se guardaría en la variable "n".

#incluir
#incluir
vacío principal ()
int n;
char a [10] = "Linux";
char b [10] = "Linux";
n = memcmp (a, b, 5);

Aquí viene la declaración anidada if-else. La parte "si" de la declaración es verificar si el valor de "n" es 0 o no. Si es así, mostrará que ambos valores son iguales en el tamaño de la memoria utilizando la función "printf".

En la parte "else-if", verificará si el valor de "n" es mayor que 0 o no. Si es así, mostrará que la segunda cadena es más pequeña que la primera cadena utilizando el método "printf". La parte del otro se mostrará que la primera cadena es más pequeña que la segunda cadena si el valor "n" es inferior a 0 utilizando la función "printf". Guardemos nuestro código para ejecutarlo yo.mi., Ctrl+S.

if (n = 0)
printf ("a es igual a b \ n");
más si (n> 0)
printf ("b es menos que a \ n");
demás
printf ("A es menor que b \ n");
regresar 0;

Haga la compilación de este código de archivo primero con el compilador GCC junto con el nombre de un archivo. Después de eso, ejecute el archivo de código con el "./a.Comando Out ”que se muestra en la imagen adjunta. Está presentando que la cadena A es menor que la cadena B I.mi., A es menos en el tamaño de la memoria.

Ejemplo 02:

Tomemos otro ejemplo similar para ver el funcionamiento de la función MEMCMP en C. Esta vez, hemos estado usando la cadena de letras mayúsculas como A1 y la pequeña cadena de letras como A2 I.mi., opuesto al primer ejemplo.

La función memcmp () se ha utilizado para comparar el tamaño de memoria de los primeros 5 caracteres entre las variables A1 y A2. El resultado de retorno se ha guardado en el entero "n".

La declaración if-else es útil aquí. La parte "si" comparará el valor de retorno de "n" es mayor que 0 o no. Si es así, mostrará la variable una cadena es mayor que la cadena A2 en el tamaño de la memoria. De lo contrario, si el "n" es inferior a 0. La función más-if printf () se ejecutará mostrando que la cadena A es más pequeña en el tamaño de la memoria que la cadena A2.

#incluir
#incluir
vacío principal ()
int n;
char a1 [10] = "sueños";
char a2 [10] = "sueños";
n = MEMCMP (A1, A2, 5);
if (n> 0)
printf ("A1 es mayor que a A2 \ n");
más si (n < 0)
printf ("A1 es menor que A2 \ n");

Si ambas condiciones anteriores no cumplen y el valor de "n" es igual a "0", el método printf () mostrará que el tamaño de memoria de A1 y A2 es el mismo.

demás
printf ("A1 es igual a A2 \ n");
regresar 0;

Compilemos nuestro código C antes de ejecutarlo i.mi., Usando el compilador GCC con el nombre del archivo. Después de ejecutar el archivo, recibimos el mensaje de que A1 es mayor que A2 en el tamaño de la memoria.

Ejemplo 03:

Echemos un vistazo al final, pero no menos menos, ejemplos en este artículo. Hay un cambio en el código general de este archivo. Hemos estado usando el mismo valor para las variables de cadena A1 y A2 del mismo tamaño I.mi., 10.

Los valores para ambas cadenas variables muestran todo el capital capital sin ningún carácter y espacio especial. La misma función memcmp () está aquí para comparar el tamaño de memoria de A1 y A2. Se compararán las primeras 5 letras para ambas cuerdas. El mismo procedimiento general se ha aplicado en el Código I.mi., Declaración "if-else" con las mismas condiciones.

#incluir
#incluir
vacío principal ()
int n;
char a1 [10] = "sueños";
char a2 [10] = "sueños";
n = MEMCMP (A1, A2, 5);
if (n> 0)
printf ("A1 es mayor que a A2 \ n");
más si (n < 0)
printf ("A1 es menor que A2 \ n");
demás
printf ("A1 es igual a A2 \ n");
regresar 0;

Compilar y ejecutar su código recién actualizado. A cambio, tenemos que las cadenas A1 y A2 son iguales en el tamaño de la memoria.

Conclusión

Este artículo fue sobre el uso del uso de la función MEMCMP en el lenguaje de programación C. Hemos compilado todos los códigos usando el compilador GCC en Ubuntu 20.04. Hemos puesto una gran cantidad de trabajo duro para que esta guía sea fácil de entender para nuestros usuarios de C.