Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> Lenguaje C

Asignación dinámica de memoria en C: Entendiendo malloc() con ejemplos prácticos

¿Qué es malloc() en C?

En la Biblioteca Estándar de C, malloc() —abreviatura de "memory allocation"— reserva dinámicamente un bloque contiguo de memoria en tiempo de ejecución. La función devuelve un puntero void* al inicio de ese bloque, que puedes castear al tipo de puntero que necesites.

Sintaxis

ptr = (cast_type *)malloc(byte_size);

Donde:

Ejemplo:

ptr = (int *)malloc(50);

Tras esta llamada, se reservan 50 bytes de memoria y ptr apunta al primer byte de ese espacio.

Ejemplo práctico

#include <stdlib.h> #include <stdio.h> int main() { int *ptr; ptr = malloc(15 * sizeof(*ptr)); /* Asigna espacio para 15 enteros */ if (ptr != NULL) { *(ptr + 5) = 480; /* Asigna 480 al sexto entero */ printf("Value of the 6th integer is %d", *(ptr + 5)); } return 0; }

Salida:

Value of the 6th integer is 480

Asignación dinámica de memoria en C: Entendiendo malloc() con ejemplos prácticos

Puntos clave

malloc() funciona con cualquier tipo de datos —incluyendo caracteres, estructuras y tipos definidos por el usuario— proporcionando una gestión de memoria flexible para programadores de C.

Lenguaje C

  1. Dominando switch-case en C++: Sintaxis, uso y ejemplos prácticos
  2. Asignación dinámica de arrays en C++: Guía práctica con ejemplos de código
  3. Dominando punteros en C++: Conceptos, ejemplos y aplicaciones prácticas
  4. Sobrecarga de operadores en C++: Guía práctica con ejemplos de código
  5. Structs en C++ explicados con un ejemplo práctico
  6. Dominando std::map en C++: Guía completa con ejemplos de código
  7. Dominar std::list en C++: Sintaxis, Funciones y Ejemplos Prácticos
  8. Funciones en C++ Explicadas con Ejemplos de Código Prácticos
  9. calloc() en C: Asignación de memoria inicializada a cero y ejemplo práctico
  10. Uso de realloc() en C: Sintaxis, mejores prácticas y ejemplo
  11. Dominando la función free() en C: Guía práctica y ejemplo