Bonsoir,

Je me heurte à un problème d'overflow, j'essaye d'écrire la fonction putnbr dont le but est d'écrire un nombre...
Ce que j'ai écris fonctionne mais lorsque je lui donne par exemple : -2147483648 le programme m'affiche -0 au lieu de -2147483648...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
void		my_putnbr(int n)
{
	if (n < 0)
	{
		my_putchar('-');
		n = -n;
	}
	if (n > 9)
	{
		my_putnbr(n / 10);
		my_putnbr(n % 10);
	}
	else
		my_putchar(n + '0');
}
Qu'en pensez-vous ?
De plus, ma question ce généralise, lorsque j'ai affaire à un overflow dans un programme, qu'elle est l'état d'esprit a avoir pour y remédier ?
Merci.