Ho una domanda su questo codice:libera lo spazio allocato in c con malloc
typedef struct pop {
unsigned long int *np; // matrix
unsigned long int f;
long double fp;
unsigned long int *R; // matrix
unsigned long int *C; // matrix
unsigned long int Dp;
unsigned long int Ds;
unsigned long int count;
struct popolazione *ptrTempLst; // pointer
struct popolazione *leftTree; // left tree pointer
struct popolazione *rightTree; // right tree pointer
} Node;
Quando lo spazio libero allocato per questa struct, prima ho liberare puntatore alla matrice all'interno struct?
Per esempio,
Node *ptr=(Node *) malloc(sizeOf(Node));
ptr->np=(unsigned long int *)malloc(10*sizeOf(unsigned long int));
/*code code code*/
// is necessary: free(ptr->np);
free(ptr);
Grazie in anticipo
perché non sostituire "unsigned long int" con la versione del compilatore e includere '' –