Programación General => C/C++ => Mensaje iniciado por: dvspeed en Domingo 3 de Octubre de 2010, 12:57
Título: Liberar el puntero de un puntero
Publicado por: dvspeed en Domingo 3 de Octubre de 2010, 12:57
Hola, mi pregunta es que si tengo un puntero apuntando a otros dos punteros, si libero el primer puntero con free, los otros dos se liberarán o tengo que liberarlos todos uno a uno.
Título: Re: Liberar el puntero de un puntero
Publicado por: alb en Domingo 3 de Octubre de 2010, 22:50
Bueno, A cada malloc tiene que corresponder un free. Poco importa si un puntero apunta a otros punteros o a otra cosa.
Título: Re: Liberar el puntero de un puntero
Publicado por: dvspeed en Domingo 3 de Octubre de 2010, 23:02
Ok, vamos que tengo que ir haciendo free uno por uno, gracias.
Título: Re: Liberar el puntero de un puntero
Publicado por: ProfesorX en Domingo 3 de Octubre de 2010, 23:08
Como bien dice el compañero, por cada malloc, debe de haber un free.
Yo añadiria ademas que por lo regular al liberar punteros, se deben liberar en order inverso a como fueron creados, no es obligatorio, pero si recomendado, ejemplo: