Salut tout le monde,

J'appelle une fonction :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
TabBonus_Ajouter(atol(ValeurBonus));
ValeurBonus est un string transformé en long.

Le prototype de la fonction qui reçoit le long :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
TabBonus_Ajouter(long ValeurBonus)
je fais :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
printf("la valeur de son bonus est de %lg :\n,ValeurBonus");
Au lieu d'obtenir 4 (que je vois en mettant le curseur de la souris sur la variable ValeurBonus) j'obtiens 5.2773e317.

Même problème si je change atol en atoi et que j'envoie un entier au lieu d'un long.

Sauriez-vous me dire comment résoudre ce problème ?

Merci d'avance.
beegees