Computacion

Páginas: 2 (257 palabras) Publicado: 8 de julio de 2012
Introducción a la programación

Punteros
Profesora: Francia Jiménez

Memoria Estática
 

Forma fácil de asignar memoria a una variable El tamaño es constante a través deltiempo de ejecución.


Conocido y requerido antes de la ejecución.



Es asignada en la compilación del programa.

Problema
 

¿Qué pasa cuando queremos usar estructurascon longitud no definida? Ejemplo:
Leer el numero de líneas de un archivo y ordenarlas El numero de líneas es indeterminado

Problema
Solución 1: Declarar una cantidad muy grande denumero de líneas. Solución ineficiente en cuanto al uso de memoria.


Memoria Dinámica


 

Definición: Espacio de almacenamiento o memoria que no es definida en tiempo decompilación, pero es definida en tiempo de ejecución. Idea: a medida que se necesita memoria, esta es pedida al S.O. Requiere: Utilización de punteros, forma para manejar la memoriadinámica en el programa.

Memoria Dinámica: Primitivas


Malloc: Solicita memoria al S.O.

tipo *nombrePuntero; nombrePuntero=malloc(8*sizeof(char));

Memoria Dinámica: Primitivas

Realloc: Modifica el tamaño de memoria solicitado al S.O.

tipo *nombrePuntero; nombrePuntero=malloc(8*sizeof(char)); /*Si necesitamos 10 casillas*/nombrePuntero=realloc(nombrePuntero,10*sizeof(char)) ;

Memoria Dinámica: Primitivas


Free: Libera la memoria solicitada al S.O.

tipo *nombrePuntero; free(nombrePuntero);

Ejercicio


Crear unprograma que permita ingresar una cantidad indeterminada de números de telefonos



A) Pidiendo la cantidad de el numero de teléfonos B) Sin pedir la cantidad de numero de teléfonos alusuario

Problema
Solución a int i, tamano; int *telefonos; // o bien: int telefonos[] telefonos = NULL; tamano = preguntar_tamano(); telefonos = malloc (tamano); for (i=0;i
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Computacion
  • Computacion
  • Computacion
  • Computacion
  • Computacion
  • Computacion
  • Computacion
  • Computacion

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS