[C con Clase] mal uso del metodo free()
ERVA
abraxas_dragon en yahoo.com.mx
Mar Feb 12 02:29:39 CET 2008
Hola gente.
Tengo un problema al momento de liberar memoria, espero me puedan ayudar.
He creado una estructura con los siguientes datos:
*****
typedef struct dataS {
unsigned char * d;
unsigned int l;
} DATA
*******
Ahora en el main:
DATA dato1;
DATA dato2;
dato1.d = NULL;
dato1.l = 0;
dato2.d = NULL;
dato2.l = 0;
/*Operaciones y asigno valores a dato1 y dato2*/
if(dato1.d)
free(dato1.d);
dato1.d = NULL;
dato1.l = 0;
if(dato2.d)
free(dato2.d);
dato2.d = NULL;
dato2.l = 0;
***************
El problema es cuando intenta liberar dato2.d, me muestra un mensaje con la leyenda:
"Acccess violation address"
Caray! la mera verdad me trae loco... sino es que ya estoy :)
Bueno espero haberme explicado. Reciban un saludo y gracias por la ayuda.
Más información sobre la lista de distribución Cconclase