Consiglio malloc()

di Anonimizzato18034 il
3 risposte
Buongiorno, vorrei un consiglio su l'allocazione di memoria.
Devo fare il controllo sulla malloc, se si sono verificati problemi, la funzione che la contiene deve restituire NULL

Ho scritto due alternative, volevo sapere quale secondo voi è meglio usare:

Sol. 1

if((p = malloc(sizeof(struct persona)),"malloc")==NULL)
return(NULL);
Sol. 2

inserisco la macro

#define CONTR_FUNZ(X,istr) \
	if((X)==NULL) { \
		perror(#istr); \
                return(NULL); \
	}
poi nella funzione inserire

CONTR_FUNZ(p = malloc(sizeof(struct persona)),"malloc")

3 Risposte

  • Le hai compilate?
  • Ho scritto una fesseria sul return(NULL)

    Se ci sono problemi di allocazione di memoria p sarà uguale a NULL, mi basta fare return(p),
    Naturalmente p è un puntatore
  • Ma io ti avevo fatto un'altra domanda...
Devi accedere o registrarti per scrivere nel forum
3 risposte