Memmove en C y C ++

Memmove en C y C ++

Hoy, vamos a aprender una de las funciones importantes del lenguaje C y C ++, que es la función MemMove (). Pero antes de eso, echemos un vistazo rápido a los conceptos básicos de los lenguajes C y C ++. También discutiremos qué funciones se encuentran tanto en los idiomas C/C ++.

El lenguaje de programación C es fácil y bastante efectivo para todos los fines. La implementación de software como Windows OS, bases de datos, intérpretes y otras herramientas es posible con él. C es un gran idioma para principiantes para aprender la codificación con. Es por eso que la programación C se conoce como el lenguaje materna, ya que sirve como base para todos los demás lenguajes de computadora. La base del lenguaje de programación C ++ se basa en las ideas de la programación orientada a objetos (OOP). El usuario puede desarrollar y comprender fácilmente los principios del programa ya que C ++ tiene una estructura clara. El lenguaje de programación C \ C ++ es excepcionalmente versátil en la realización de múltiples funciones y el cambio de una variable de un tipo a otro. La función MemMove () es una de las funciones de C/C++.

La función MemMove () transfiere "NUM" bytes simultáneamente desde el contenido del bloque de memoria que se indica por la fuente hacia la ubicación indicada por el destino. La función MemMove () solo es beneficiosa cuando los objetos de origen y destino se superponen y evitan que ocurra el comportamiento indefinido. Para obtener más información sobre la función MemMove (), cavemos profundamente y veamos cómo implementar la sintaxis y los ejemplos en la función MemMove ().

Sintaxis:

Aquí está el mismo estilo de escritura y la implementación de la función MemMove () para los lenguajes C y C ++. Primero, escribimos la palabra clave "nulo", lo que significa que si la función no devuelve ningún valor, escribimos el nombre de la función que queremos implementar que sea la función MemMove (). En los soportes de la función, escribimos el destino para que podamos colocar los bytes "num" con la palabra clave "nula". Luego, escribimos la ubicación de origen desde donde obtenemos los bytes "num".

Parámetros:

Dest: Dirección a la ubicación de almacenamiento en la que se copian los datos.

SRC: Dirección a la ubicación de almacenamiento desde la que se copian los datos.

contar: Cantidad de datos para copiar de origen a destino.

Valor de retorno:

A cambio, obtenemos la dirección al área de memoria de destino. Dest es devuelto por la función MemMove ().

Ejemplo 1: Implementación de la función MemMove () en C

Comencemos a implementar nuestro primer y simple ejemplo del idioma C. Para comenzar a escribir, primero necesitamos un compilador C para que podamos escribir y ejecutar el programa. Para eso, abra el compilador C y comience a implementar el programa.

#incluir
#incluir
int main ()

char ch1 [] = 'l', 'i', 'n', 'u', 'x';
int longitud = sizeof (ch1)/sizeof (ch1 [0]);
printf ("Antes de aplicar la función MemMove ():");
para (int i = 0; i< length; i++)

printf ("%c", ch1 [i]);

char *ch2 = & ch1 [2];
MemMove (CH2, CH1, SizeOf (char)*2);
printf ("\ n \ nafter aplicando la función memmove ():");
para (int i = 0; i<5; i++)

printf ("%c", ch1 [i]);

regresar 0;


Siempre comenzamos incorporando los módulos del programa central después de iniciar el compilador. Estos módulos son los módulos de lenguaje C BUNDLED. Simplemente necesitamos escribir una línea de código para incluir estos módulos, a diferencia de las docenas de líneas de código para construir el módulo. El indicador "#" informa al traductor a cargar el módulo primero antes de usar la palabra clave "incluir" para agregar el módulo al programa. El "stdio.H "módulo significa que el compilador acepta los datos del usuario y los muestra al usuario. El segundo módulo del programa es "#include" para que podamos usar las funciones relacionadas con la cadena en el programa existente.

Luego, iniciamos la función Main () para que podamos escribir la línea de código real que queremos implementar en el programa. En la línea 6, declaramos el nombre de la matriz de personajes "CH1" del tipo de personaje. Entonces, le asignamos un valor de personaje. Después de eso, calculamos la longitud del "CH1" e imprimimos la matriz de entrada "CH1" usando el "For Loop".

Después de eso, declaramos el puntero a la matriz "CH2" de un personaje tipo tipo y asignamos la dirección de la matriz "CH1" a la matriz "CH2". Luego, lo imprimimos usando la instrucción printf (). Veamos la salida de la ilustración anterior:

Ejemplo 2: Implementación de la función MemMove () en C++

Aquí está el ejemplo básico que muestra cómo se desempeña la función MemMove () en el lenguaje C ++. Para comenzar a escribir, primero necesitamos un IDE C ++ para que podamos escribir y ejecutar el programa. Para eso, abra el compilador C ++ y comience a implementar el programa.

Después de abrir el compilador, siempre comenzamos incluyendo los archivos de encabezado que son necesarios para el lenguaje de programación C ++ para que los programas se ejecuten. Para construir el programa y usar el método MemMove (), primero incluimos los dos archivos de encabezado fundamentales: "IOSTream" y "CString". C ++ proporciona varias formas de trabajar con matrices y cadenas. Estas funciones están disponibles para su uso cuando el archivo de encabezado se incluye en un programa con el archivo de encabezado "#include" utilizado para copiar una cierta cantidad de bytes de datos del origen al destino. El archivo de encabezado "#include" se usa tanto para la entrada como para la salida de los datos del usuario. Luego, usamos la "ETS" estándar de Names STD en nuestro código para usar la sintaxis estándar del lenguaje de programación C ++ para evitar que los objetos, métodos y parámetros hacen referencia al mismo alcance a lo largo de todo el programa.

#incluir
#incluir
usando el espacio de nombres STD;
int main ()

char src [50] = "1234567890";
char dest [50] = "0987654321";
cout<< "Before Appyling memmove to Destination: " << dest << endl;
Memmove (Dest, SRC, 6);
cout<< "After Appyling memmove to Destination: " << dest;
regresar 0;


Comenzamos a escribir la función Main () para comenzar la ejecución de una línea de código real. En la línea 7, hay una matriz de dos caracteres de longitud 50 que se declara como "SRC [50]" y "Dest [50]". Usamos la instrucción "Cout" para imprimir el mensaje, "Antes de aplicar memmove () al destino":. Luego, pasamos el parámetro "Dest" para imprimir el valor de la matriz "Dest". Luego, la función MemMove () se aplica a la variable de tipo de caracteres declarada como "Src [50]" y "Dest [50]" para superponer el cierto número de bytes del origen (SRC) al objetivo (Dest) con el número de "contar". Esto identifica el número de bytes que se copian de "SRC" a "Dest". Como puede ver en la siguiente ilustración, declaramos "6" número de conteo.

Después de eso, usamos la instrucción "Cout" nuevamente para mostrar el mensaje, "Después de aplicar MemMove () al destino:" y pasar la matriz "Dest" variable de tipo "de carácter". Para evitar que el programa se ejecute, debemos utilizar una declaración de devolución al conclusión del programa. Luego devolvemos 0 a la función principal, lo que indica que el programa se ejecuta con éxito y logra su objetivo.

Puede ver en la siguiente salida del método MemMove () que si se superpone, por ejemplo, cuando el puntero inicial se mueve a la letra 6, el puntero sigue imprimiendo y los siguientes caracteres se superpondrán. Este fragmento de código C ++ se ejecutó y los resultados se muestran en la siguiente imagen:

Conclusión

En este artículo, aprendimos sobre la función MemMove () en los lenguajes de programación C y C ++. Hablamos sobre cómo funciona la función MemMove () a través del ejemplo de C y C ++ con una explicación detallada de cada línea de código. Esperamos que encuentre este artículo útil para desarrollar su conocimiento sobre la función MemMove () en C y C++.