Bonjour,

Dans le cadre d'un parseur de configuration, je cherche a assigner des valeurs a un type void *, seulement j'ai un problème avec le type int, je ne peux récuperer que des valeur de -128 à 127.

ici tmp pointe sur une chaine, "256000" par exemple:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
...
(*var)->value[j] = malloc(sizeof(int));
 
*(*var)->value[j] = atoi(tmp);
 
printf("%i\n", atoi(tmp));
...
La valeur stockée sera tronquée et ici me donne 0, par contre le printf me donne bien les 256000.
Je n'ai pas trop de solution, et j'avoue que je me tente un peu avec le void *, donc je parie qu'il y a u truc que je n'ai pas compris.

Merci d'avance