elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  ¿Como funciona exactamente realloc()?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ¿Como funciona exactamente realloc()?  (Leído 3,043 veces)
marcoma

Desconectado Desconectado

Mensajes: 2


Ver Perfil
¿Como funciona exactamente realloc()?
« en: 17 Agosto 2015, 17:46 pm »

Me gustaría saber si realloc ademas de asignar los valores a la nueva dirección de memoria
se encarga de liberar la memoria ocupada anteriormente.

Gracias  :-X


En línea

Hogger

Desconectado Desconectado

Mensajes: 3



Ver Perfil
Re: ¿Como funciona exactamente realloc()?
« Respuesta #1 en: 17 Agosto 2015, 20:03 pm »

Hola,

Realloc() únicamente expande o contrae un bloque de memoria ya existente por lo que no libera la memoria ocupada anteriormente, i.e, expande/contrae un malloc()/calloc() anterior.

Los valores ya existentes en el bloque de memoria son preservados. Si se expande el bloque de memoria reservado, los valores del nuevo "pedazo" reservado son indeterminados.

http://www.cplusplus.com/reference/cstdlib/realloc/

Saludos.


En línea

Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.969


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: ¿Como funciona exactamente realloc()?
« Respuesta #2 en: 18 Agosto 2015, 01:13 am »

Si, siempre que realloc no retorne null ya libero la memoria pasada como primer parametro.
« Última modificación: 18 Agosto 2015, 01:15 am por Eternal Idol » En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
marcoma

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: ¿Como funciona exactamente realloc()?
« Respuesta #3 en: 18 Agosto 2015, 10:27 am »

 en el enlace dice: The function may move the memory block to a new location
por tanto supongo que si que cambiara de dirección de memoria no? o lo hace solo al no poder re dimensionar desde esa dirección de memoria actual? ;D
En línea

Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.969


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: ¿Como funciona exactamente realloc()?
« Respuesta #4 en: 18 Agosto 2015, 11:36 am »

Solo cambia la direccion cuando lo necesita pero tenes que guardar el retorno en una variable temporal y comprobar que no sea null, cuando no sea null ya podes asignarlo a la variable original sin problema (o sera igual o la memoria original estara liberada).
En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Cómo hacer un túnel SSH? En qué consiste exactamente?
Redes
KisakuIto 5 5,103 Último mensaje 19 Septiembre 2011, 11:55 am
por KisakuIto
API parecida a realloc
Ingeniería Inversa
.:UND3R:. 3 2,537 Último mensaje 6 Octubre 2011, 17:56 pm
por Иōҳ
Problema con realloc - c
Programación C/C++
HRSLASH 5 3,217 Último mensaje 5 Noviembre 2012, 02:51 am
por HRSLASH
Como funciona exactamente scp en Putty?
Redes
NikNitro! 2 2,779 Último mensaje 4 Agosto 2013, 19:31 pm
por NikNitro!
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines