GoConqr has a new look! Let us know what you think.

Mind map

Reserva dinámica de memoria para los miembros de una estructura con la biblioteca alloc.h

Alejandro Barajas Spanish

Map content

Reserva dinámica de memoria para los miembros de una estructura con la biblioteca alloc.h

  1. Objetivo

    • En esta práctica el alumno aprenderá el uso de memoria dinámica con la librería alloc.h
      • así como la utilización de algunos de sus métodos.
  2. Memoria dinámica

    • Es cuando se reserva memoria en tiempo de ejecución.
      • Su principal diferencia frente a la estática es que su tamaño puede variar durante la ejecución del programa.
        • El uso de memoria dinámica es necesario cuando no se conoce de antemano el número de datos o elementos a tratar.
  3. Biblioteca alloc.h

    • El fichero de cabecera alloc.h proporciona funciones relativas a la asignación de memoria dinámica.
  4. Función malloc

    • La función malloc() es la forma más habitual de obtener bloques de memoria dinámica.
      • La función genera o asigna un bloque de memoria igual al número de bytes pasados como argumento.
        • void*= malloc(tam) ;
          • Donde:
            • void* : es el apuntador que almacenará la referencia al bloque de memoria generado.
            • tam : es el tamaño en bytes del bloque de memoria que se va a solicitar.
  5. sizeof(tipo_de_dato) .

    • Es otra función importante utilizada para reservar memoria dinámica
      • Esta función permite reservar el número de bytes especificados en el argumento tipo de dato
        • int * ptr; ptr=(int*) malloc(10*sizeof(int)) ;
          • En caso de no haber memoria suficiente malloc() devuelve el valor NULL
            • Por lo que siempre es conveniente preguntar si se asignó el bloque de memoria después esta operación.
  6. Uso de la función free

    • Cuando se termina de utilizar un bloque de memoria reservado con malloc() , se debe liberar el espacio de memoria utilizado
      • void free (void * ptr) ;
        • Dónde: *ptr es el apuntador que hace referencia al bloque de memoria asignado. Si ptr es NULL , entonces free no hace nada.

Information

Description
Practica 4
Created by
Alejandro Barajas · Feb 2017
Updated
Feb 17, 2017
Views
22
Tags
h1h2h3
Rating

Feedback

What is it about?

What do you think of the new look?

How do you like it?