Salut,
Tu a un pointeur (current) qui pointe sur une zone de la taille d'un pointeur (une adresse mémoire). Je pense que ce que tu veux plutôt faire c'est faire pointer ton pointeur (current) sur l'élément passer en paramètre à la méthode add(). Pour cela remplace la ligne suivante :
current=malloc(sizeof(item));
par
Tu essaye ensuite d'afficher la valeur pointée mais c'est un pointeur sur le type void donc je pense que printf() ne sait pas afficher un void. Utilise donc un pointeur intermédiaire de type int et transtype ton type void en int comme cela :
1 2 3 4
| int i=5;
list->add(&i);
int* temp = (int*) list->getCurrent();
printf("%d \n", *temp); |
Partager