[C con Clase] Diferencia entre creación variable normal y resevado de espcio con malloc.

Jorge Vega Sanchez memmaker650 en gmail.com
Jue Oct 8 20:12:09 CEST 2009


No me termina de quedar claro. He visto el ejemplo que ha puesto  
Samuel pero veo alguna contradicción con lo que habeis dicho. El  
ejemplo lo tengo claro, porque pides por pantalla el número de datos a  
introducir, pero si no conocemos el número de datos que se van a  
introducir. Es decir, el usuario va a introducir datos a un array sin  
saber la cantidad total de datos que va a introducir. Luego no  
entiendo como se definiría esto para un vector. Lo del ejemplo se  
convierte por si sólo en un vector. Es una forma un tanto peculiar de  
definir un vector.

El 07/10/2009, a las 22:47, David Fire escribió:

> aparte de las cosas que dijieron aca
> supon que tienes una estructura de datos muy grande o un arreglo o  
> lo que sea muy grande ir pasandolo por valor de un lado a otro seria  
> muy poco eficiente si por x motivo no puedes crear esa variable en  
> el main por ejemplo no saben que tamaño va a tener y lo creas dentro  
> de una funcion no tienes forma de devolverlo si no es por copia (sin  
> usar maloc) y cada vez que lo uses y quieras devolver la version  
> modificada tendras que hacerlo por copia.
> entonces lo que haces es lo creas en el heap con malloc y pasas solo  
> un puntero de un lado a otro.
>
> cuando el programa termina la memoria es liberada.
> David
>
>
>
> El 7 de octubre de 2009 13:11, Jorge Vega Sanchez <memmaker650 en gmail.com 
> > escribió:
> Buenas.
>
> Me acaba de surgir una duda que me corroe. No termino de verle uso a  
> la función malloc para reservar espacio de memoria para una varible  
> o struct o lo que sea. Al crear una variable no hacemos lo mismo ???  
> Si no librermoas este espacio reservado al finalizar nuestro  
> programa lo seguimos teniendo ahí el valor ??
>
>
> Best regards
> Jorge
>
>
>
>
> _______________________________________________
> Lista de correo Cconclase Cconclase en listas.conclase.net
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
>
>
>
> -- 
> (\__/)
> (='.'=)This is Bunny. Copy and paste bunny into your
> (")_(")signature to help him gain world domination.
>
> _______________________________________________
> Lista de correo Cconclase Cconclase en listas.conclase.net
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ

Best regards
Jorge



------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20091008/49e4753e/attachment.html>


Más información sobre la lista de distribución Cconclase