C++Talk.NET Forum Index C++Talk.NET
C++ language newsgroups
 
Archives   FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Recherche classe d'entiers > 32bits

 
Post new topic   Reply to topic    C++Talk.NET Forum Index -> C++ (French)
View previous topic :: View next topic  
Author Message
Laurent
Guest





PostPosted: Sun Mar 06, 2005 11:16 am    Post subject: Recherche classe d'entiers > 32bits Reply with 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é.

Merci.


Back to top
Cyrille
Guest





PostPosted: Sun Mar 06, 2005 1:09 pm    Post subject: Re: Recherche classe d'entiers > 32bits Reply with quote



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





PostPosted: Sun Mar 06, 2005 9:47 pm    Post subject: Re: Recherche classe d'entiers > 32bits Reply with quote



Oui effectivement __int64 marche avec mon compilo sous windows mais pas long
long.

Merci bien.


Back to top
Fabien LE LEZ
Guest





PostPosted: Sun Mar 06, 2005 10:35 pm    Post subject: Re: Recherche classe d'entiers > 32bits Reply with quote

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





PostPosted: Mon Mar 07, 2005 7:40 am    Post subject: Re: Recherche classe d'entiers > 32bits Reply with quote

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





PostPosted: Mon Mar 07, 2005 8:50 pm    Post subject: Re: Recherche classe d'entiers > 32bits Reply with quote

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
Display posts from previous:   
Post new topic   Reply to topic    C++Talk.NET Forum Index -> C++ (French) All times are GMT
Page 1 of 1

 
Jump to:  
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


Powered by phpBB © 2001, 2006 phpBB Group
SEO toolkit © 2004-2006 webmedic.