[ Foro de C ]

Mejorar agenda. Ejercicio pagina 130

11-Nov-2009 22:00
Jesús S.
1 Respuestas

¡Hola!

Se pide que pueda manejar 1000 fichas, pero que sólo reserve espacio para las necesarias.

No encuentro más solución que estimar cuántas fichas voy a introducir en cada sesión, añadir esta cifra a las existentes y reservar esta cantidad de memoria, pero ya no me parece una solución dinámica.¿Alguna idea?

Saludos


17-Nov-2009 01:16
Nacho Cabanes (+83)

Efectivamente, si quieres mantener en memoria sólo las necesarias, necesitas reservar de forma dinámica usando "malloc", pero lo de las 1000 fichas se contradice con lo de reservar espacio para las que necesitas. Está mal redactado y no queda nada claro. Me lo apunto para corregirlo.

Lo que sí puedes hacer es reservar espacio para las fichas que realmente hay en el fichero (y un margen para las que puedas añadir, como por ejemplo 10). Par saber cuantas hay ya, puedes hacer una primera lectura del fichero en la que sólo cuentes, o  bien guardar ese dato (al principio del fichero o en un fichero aparte).






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)