Bonjour,
Je cherche a dupliquer une structure qui ressemble a ca :
Je me suis cree une fonction qui permet de dupliquer une instance de cette structure :Code:
1
2
3
4
5
6
7
8
9
10 typedef struct TEST{ /* Methodes */ int (*Read) (int parm1, int param2); /* Donnees */ void* zone_mem; char* name; int value } Parametres;
Mon problème est que je ne sait pas bien me servir des pointeurs de fonctions,Code:
1
2
3
4
5
6
7
8
9
10
11 Parametres* DuplicateParametres(Parametres* params){ Parametres* new_parametres = (Parametres*)malloc(sizeof(Parametres)); memcpy(new_parametres,params,sizeof(Parametres)); new_parametres->name = strdup(params->name) return new_parametres; }
je ne sait pas comment c'est géré en mémoire.
Je me demande donc si mon memcpy de la structure duplique également les pointeurs sur fonction (en l'occurence Read).
Mon deuxieme probleme est comment dupliquer la zone_memoire declarer en void*. Cette variable est un pointeur vers une zone memoire dependant du type de parametre cree et peut donc etre de differentes tailles.
Merci.