Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
En la programación se ocupan diferentes tipos de datos los cuales nos van a servir para asignar el espacio de memoria. Esto se utilizara la función MALLOC. Tipo de dato Tamaño en memoria Char 1 bits Int 4 bits float 4 bits short 2 bits double 8 bits long 4-8 bits long double 16 bits SINTAXIS ANÁLISIS Y DISEÑO DEANÁLISIS Y DISEÑO DEANÁLISIS Y DISEÑO DE PROGRAMASPROGRAMASPROGRAMAS ¿QUÉ ES LA FUNCIÓN MALLOC? Esta función solicita un espacio libre de memoria del programa en bytes y por lo general esta función retorna a un apuntador de tipo void. El lenguaje C nos permite en tiempo de ejecución solicitar espacio mediante la función malloc (memory allocate = Asignar memoria) y luego de usarla en forma obligada debemos devolverla llamando a la función free. Estas dos funciones se encuentran en la librería: #include<stdlib.h> EJEMPLO Nota: Para saber el espacio de memoria de cada dato, se puede ocupar la fución sizeof() Función calloc: Esta función proporciona el puntero de un bloque reservado por el sistema operativo en el cúmulo, si es posible, o bien el valor NULL, si no es posible (por falta de memoria o por fragmentación del cúmulo). SINTAXIS: void * calloc(size_t num_elementos, size_t tamaño_de_un_elemento); Función Free: Esta función es la encargada de liberar los bloques de memoria que, habiendo sido reservados mediante calloc() , malloc() o realloc() hayan dejado de ser útiles, pudiendo ser devueltos a la lista de bloques disponibles que mantiene el sistema operativo. SINTAXIS: void free(void * ptro); Función realloc: Esta función tiene la tarea de redimensionar el espacio asignado de forma dinámica a un puntero. SINTAXIS: void * realloc (void * ptr, tamaño size_t) Función sizeof: Esta función se encarga de calcular o asignar el tamaño a reservar de la función malloc. SINTAXIS: y = (int*) malloc(sizeof(int)); Función Memcpy: Esta interesante función permite realizar copias rápidas de bloques de memoria. El puntero origen denota la dirección en que comienza el bloque que sirve como fuente de información; destino denota la dirección en que comienza el bloque en el cual se copiará la información y num_bytes_copiados denota el número exacto de bytes que, comenzando en origen se copiarán a partir de la dirección señalada por destino. SINTAXIS: void memcpy(void * destino, const void * origen, size_t num_bytes_copiados); Link del archivo en canva https://www.canva.com/design/DAE595S6gEY/share/preview? token=Z7CiPLLSYc0oKAGiQYnEKg&role=EDITOR&utm_content=DAE595S6gEY&utm_campaign=desig nshare&utm_medium=link&utm_source=sharebutton
Compartir