Supposons que je la struct et la fonction suivante renvoyant un pointeur:De retour un pointeur struct
typedef struct {
int num;
void *nums;
int size;
} Mystruct;
Mystruct *mystruct(int num, int size)
{
//Is the following correct? Is there a more efficient way?
Mystruct mystruct;
mystruct.num = num;
mystruct.size = size;
mystruct.nums = malloc(num*sizeof(size));
Mystruct *my;
*my = mystruct;
return my;
}
Je veux définir tout pointeur myStruct en utilisant la fonction ci-dessus. Devrais-je déclarer une variable Mystruct, définir les propriétés de Mystruct, lui affecter un pointeur, et retourner le pointeur ou définir les propriétés d'une propriété mystruct via un pointeur immédiatement?
Peut-être pourriez-vous coder les deux options. De la description, il n'est pas clair ce que vous avez l'intention. –
Et rappelez-vous ... ne propagez jamais un pointeur "de la pile" vers le haut. –