 |
C++Talk.NET C++ language newsgroups
|
| View previous topic :: View next topic |
| Author |
Message |
Laurent Guest
|
Posted: Sun Mar 06, 2005 11:16 am Post subject: Recherche classe d'entiers > 32bits |
|
|
Salut,
Pour des calculs sur des tailles de fichiers en octets je déborde avec des
"unsigned long". Je cherche donc une classe toute faite qui permette de
faire des calculs et des affichages sur des entiers plus longs. Ca devrait
exister mais j'ai pas trouvé.
Merci.
|
|
| Back to top |
|
 |
Cyrille Guest
|
Posted: Sun Mar 06, 2005 1:09 pm Post subject: Re: Recherche classe d'entiers > 32bits |
|
|
Laurent a écrit :
| Quote: | Salut,
Pour des calculs sur des tailles de fichiers en octets je déborde avec des
"unsigned long". Je cherche donc une classe toute faite qui permette de
faire des calculs et des affichages sur des entiers plus longs. Ca devrait
exister mais j'ai pas trouvé.
|
Certaines architectures définissent "long long" qui doit faire 64 bits,
garantis par le standard du C99 mais pas par celui du C++, je crois.
Sous Windows on trouve aussi __int64.
|
|
| Back to top |
|
 |
Laurent Guest
|
Posted: Sun Mar 06, 2005 9:47 pm Post subject: Re: Recherche classe d'entiers > 32bits |
|
|
Oui effectivement __int64 marche avec mon compilo sous windows mais pas long
long.
Merci bien.
|
|
| Back to top |
|
 |
Fabien LE LEZ Guest
|
Posted: Sun Mar 06, 2005 10:35 pm Post subject: Re: Recherche classe d'entiers > 32bits |
|
|
On Sun, 6 Mar 2005 22:47:54 +0100, "Laurent" <tnerual (AT) abc (DOT) com>:
| Quote: | Oui effectivement __int64 marche avec mon compilo sous windows mais pas long
long.
|
Histoire de faciliter la portabilité, je te conseille d'écrire une
fois pour toute
typedef __int64 Entier64Bits;
et de n'utiliser que le type "Entier64Bits" -- ainsi, si jamais tu
dois compiler ton code sur une autre plate-forme, seule la ligne avec
le typedef devra être adaptée.
--
;-)
|
|
| Back to top |
|
 |
kanze@gabi-soft.fr Guest
|
Posted: Mon Mar 07, 2005 7:40 am Post subject: Re: Recherche classe d'entiers > 32bits |
|
|
Fabien LE LEZ wrote:
| Quote: | On Sun, 6 Mar 2005 22:47:54 +0100, "Laurent"
[email]tnerual (AT) abc (DOT) com[/email]>:
Oui effectivement __int64 marche avec mon compilo sous
windows mais pas long long.
Histoire de faciliter la portabilité, je te conseille d'écrire
une fois pour toute
typedef __int64 Entier64Bits;
et de n'utiliser que le type "Entier64Bits" -- ainsi, si
jamais tu dois compiler ton code sur une autre plate-forme,
seule la ligne avec le typedef devra être adaptée.
|
Histoire de compatibilité, inclure <stdint.h>, et se servir
d'int64_t me semble le plus indiqué. Avec la condition,
évidemment, que si ton compilateur n'offre pas encore
<stdint.h>, il faut que tu l'écris. (Mais n'en écrire que les
parties dont tu as besoin, ce n'est pas autant de travail que
ça.)
--
James Kanze GABI Software
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
|
|
| Back to top |
|
 |
Laurent Guest
|
Posted: Mon Mar 07, 2005 8:50 pm Post subject: Re: Recherche classe d'entiers > 32bits |
|
|
| Quote: | Histoire de faciliter la portabilité, je te conseille d'écrire
une fois pour toute
typedef __int64 Entier64Bits;
et de n'utiliser que le type "Entier64Bits" -- ainsi, si
jamais tu dois compiler ton code sur une autre plate-forme,
seule la ligne avec le typedef devra être adaptée.
|
C'est une bonne idée effectivement, car j'ai déjà dû changer tout les long
en __int64 ... heureusement c'est pas un gros programme.
|
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|