From: "Premoli, Roberto" <[EMAIL PROTECTED]>
To: "Debian mailing list" <[email protected]>
Subject: [OT]: come avere numeri maggiori di 2^31 in C?
Date: Fri, 9 Jun 2006 11:20:24 +0200
(tm)Ciao *
Premetto che sono un neofita del C.
Lavoro su una macchina x86.
I numeri interi usabili, di default, vanno da -2^31 a +2^31.
In un mio soft, ho necessita' di avere dei numeri (interi positivi) che
possano contenere numeri grandi piu grande di 2^31.
Ho provato a impostare a fare questa funzione
Int Moltiplica()
{
Long long 1 = 1;
int n;
for (n=0;n<35;n++)
{
i=i*2;
printf("%d\n",i);
}
return 0;
}
ma arrivato a 2^32 imposta un numero negativo e i successivi soni tutti
a zero: cosa devo fare per avere questi benedetti interi da 0 a (2^64)-1
?
grazie per l'aiuto.
beh se dichiari una variabile long ma poi nel ciclo ne usi una int stai da
capo a tredici :-D
se non ricordo male dovresti dichiarare una variabile "long int" e poi prova
ad usarla in quel loop ;-D
tipo:
long int num=1;
for (n=0;n<35;n++)
{
num=num*2;
printf("%......\n",num);
}
nel printf non so se va bene %d o il long int necessita di un altro
"operatore" ....
al massimo puoi provare con un "long double" che occupa 8 bytes e con la
keyword unsigned ;-) (con il double nel printf va %e)....
saluti!
_________________________________________________________________
Blocca le pop-up pubblicitarie con MSN Toolbar! http://toolbar.msn.it/
--
Per REVOCARE l'iscrizione alla lista, inviare un email a
[EMAIL PROTECTED] con oggetto "unsubscribe". Per
problemi inviare un email in INGLESE a [EMAIL PROTECTED]
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]