cavay
11-11-2005, 09:54
Ragazzi chi mi spiega il motivo per cui l'assegnazione ad una variabile intera di un numero che inizia per 0 fa cambiare il significato numerico alla variabile.
Mi spiego meglio:
supponendo di dichiarare ed assegnare due variabili(int e/o unsigned int) come segue:
int pippo = 50;
int pluto = 050;
e/o
unsgned int paperino = 15;
unsgned int zioPap = 015;
cosa succede dal punto di vista della rappresentazione macchina?perche' risultano diversi??
il risultato ottenuto se si procede a stampare i numeri e il seguente:
printf("pippo = %d\n",pippo); ===> pippo = 50
printf("pluto = %d\n",pluto); ===> pluto = 40
Non mi ricordo bene ma...qualcosa del genere l'affrontai gia' qualche anno fa ma adesso mi sfugge.
Help me!
Mi spiego meglio:
supponendo di dichiarare ed assegnare due variabili(int e/o unsigned int) come segue:
int pippo = 50;
int pluto = 050;
e/o
unsgned int paperino = 15;
unsgned int zioPap = 015;
cosa succede dal punto di vista della rappresentazione macchina?perche' risultano diversi??
il risultato ottenuto se si procede a stampare i numeri e il seguente:
printf("pippo = %d\n",pippo); ===> pippo = 50
printf("pluto = %d\n",pluto); ===> pluto = 40
Non mi ricordo bene ma...qualcosa del genere l'affrontai gia' qualche anno fa ma adesso mi sfugge.
Help me!