Accueil > Forum > > > > !!! Gestion d'entiers de 64 bits !!!
!!! Gestion d'entiers de 64 bits !!!
mercredi 9 août 2006 à 11:59:35 |
!!! Gestion d'entiers de 64 bits !!!

yoyo269
|
Bonjour à toutes et à tous. Je souhaite pouvoir gérer les entiers de 64 bits sous Dev-C++ (et je compte y rester). Pour cela j'utilise la déclaration de "__int64" ou bien "long long". Le programme se compile sans broncher sur les types de variables donc il les connait. Sauf que si dans le code je mets quelque chose du genre : "__int64 Taille = 100000000000;", le compilateur me dit que : "integer constant is too large for "long" type ". Si vous avez des propositions ou solutions pour arriver à résoudre ce problème je vous en serais très reconnaissant. YOYO, @+. "L'intelligence c'est comme un parachute, quand on en n'a pas...on s'écrase !"
|
|
mercredi 9 août 2006 à 14:03:53 |
Re : !!! Gestion d'entiers de 64 bits !!!

Clem
|
Le problème est assez simple à comprendre, tu lui as entré le nombre "100000000000", sauf que ce nombre tu l'as entré sans lui préciser que tu voulais qu'il le traite comme un int64, du coup il continue à faire comme si c'était un nombre de 32 bits, et bien sûr c'est beaucoup plus grand que 4294967296. Il doit donc y avoir aussi en plus de ce problème qu'il t'indique, le problème comme quoi tu essayais d'assigner deux types incompatibles (__int64 et long) Je pense que tu devrais essayer __int64 Taille = (__int64)100000000000; Mais j'en doute énormément qu'il t'affecte pour autant la bonne valeur, et penches toi plutôt vers quelque chose du genre, que j'ai trouvé sur google : void __stdcall Test(HWND hdlg) { char buf[32]; __int64 r; strcpy(buf, "-987654321987654321"); r = _atoi64(buf); _i64toa(r, buf); MessageBox(hdlg, buf, szappname, 0); }
Ou alors, tu devras travailler en mémoire, comme mixer ton __int64 en union façe à deux de 32 bits. Ca devrait être plus rapide à éxécuter qu'avec les api, mais dans certains cas ça pourrait complexifier la chose.
ps: DevC++ n'est qu'un IDE, programme qui relie tous les outils de programmation. Le compilateur c'est plutôt gcc alias mingw. Et aussi, évites de penser les __int64 comme des "long long", ce qui n'est pas compatible processeurs 64 bits d'après mes souvenirs.
|
|
mercredi 9 août 2006 à 14:50:52 |
Re : !!! Gestion d'entiers de 64 bits !!!
|
mercredi 9 août 2006 à 15:00:31 |
Re : !!! Gestion d'entiers de 64 bits !!!

yoyo269
|
T'as proposition ne me convient pas car il faut que je puisse gérer facilement sa valeur (ajout ou retrait de valeur, division, ...). De plus l'erreur du compilateur m'indiquait : "constante trop grande pour loger dans un long", ce qui veut dire qu'il considère la variable Taille comme un long alors qu'il est clair qu'elle est déclarée en __int64. Même en forçant, avec un cast, la variable et la constante, il me met toujours la même erreur. En tous cas merci de t'être penché sur mon cas c'est très sympa de ta part. Si tu as une autre idée que la gestion brute en mémoire ça m'arrangerait beaucoup. :-p YOYO, @+. "L'intelligence c'est comme un parachute, quand on en n'a pas...on s'écrase !"
|
|
mercredi 9 août 2006 à 15:23:34 |
Re : !!! Gestion d'entiers de 64 bits !!!

steve_clamage
|
Réponse acceptée !
En C99, long long n = 100000000000LL;
Pour une constante litterale de type __int64 je ne sais pas, regarde dans la documentation du compilateur.
|
|
mercredi 9 août 2006 à 15:52:24 |
Re : !!! Gestion d'entiers de 64 bits !!!

yoyo269
|
Merci steve_clamage !!! C'était juste le LL qu'il me fallait. Evidemment encore 3 fois rien mais fallait le savoir. YOYO, @+. "L'intelligence c'est comme un parachute, quand on en n'a pas...on s'écrase !"
|
|
Cette discussion est classée dans : entiers, long, gestion, bits, int64
Répondre à ce message
Sujets en rapport avec ce message
Help me: grand nombres entiers [ par waza ]
voila je suis en train de réaliser un programme de cryptage rsa mais le pb c ke je suis limiter a des entiers de 64 bits!! (avec __int64) et je me dem
Créer 1 variable avec plus de 32 bits [ par Balou001 ]
Bonjour à tous,Supposons que j'ai une variable V de type unsigned long int dont tous les bits sont à 1 (bits forts à gauche).quand je fais un V>=1, le
bench [ par draluorg ]
Salut a tous,Voila je suis entrain de faire un ptit bench pour me faire une idee de la puissance "brute" d'un pc et je suis un peu surpris par les res
API :: Gestion de plusieurs fenetres [ par JackosKing ]
Bon, voilà, j'ai fait un programme qui peux creer un infinité de fenêtres (en fonction de la ram bien entendue:)), le probleme c'esgt pour la gestion
api :: SetWindowLong(hWnd, GWL_WNDPROC, Twiny::WndProc); probleme:( [ par JackosKing ]
Voilà je voulais utilisé cette fonction comme on me l'avait conseillé, mais j'ai une erreure:E:\TinyShell\Twiny.cpp(56) : error C2664: 'SetWindowLongA
convertir une image de 256 en 1024 niveau de gris [ par pirate75000 ]
comment convertir une image de 256 niveau de gris 8 bits en une image de 1024 ou 2048 niveau de grisen 10 ou 12 bits
Conversion [ par spinosorus ]
Bonjour a tous Existe t-il un moyen pour caster un variable de type String en Long ;J ai utiliser la fonction atol(), mais il m as afficher l'erreur s
Programme de gestion de sondages [ par deeplight ]
Bonjour,J'aimerais me renseigner sur les programmes permettant de sortir des statistiques à partir de questionnaires de sondages. C'est un travail que
Livres en rapport
|
Derniers Blogs
SESSION SILVERLIGHT 5 3D : SLIDES ET DEMOSSESSION SILVERLIGHT 5 3D : SLIDES ET DEMOS par Groc
Durant les techdays, j'ai eu le plaisir d'animer une session sur Silverlight 5 et la 3D avec Simon Ferquel. Comme promis, voici nos slides et mes démos (celles avec le viper BSG) ici et là. Pour mémoire, les démos utilisent toutes le viper BSG...
Cliquez pour lire la suite de l'article par Groc [TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES[TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES par gpommier
Suite à la session que j'ai présenté sur WebMatrix 2, vous pouvez trouver les slides ici, ainsi que les démos en packages nuget : démos1 et démos2 J'en profite pour remercier chaleureusement tous ceux qui sont venus très nombreux à cette sess...
Cliquez pour lire la suite de l'article par gpommier [SHAREPOINT] LES SESSIONS TECHDAYS 2012.[SHAREPOINT] LES SESSIONS TECHDAYS 2012. par Patrick Guimonet
Voici donc pour ceux qui n'ont pas pu venir, ou ceux qui n'ont pas pu toutes les suivre la liste des sessions SharePoint aux TechDays 2012, que je mettrais à jour dès que les liens des vidéo seront disponibles. Ou ici : http...
Cliquez pour lire la suite de l'article par Patrick Guimonet TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE ! par Vko
Hier durant une session dédiée aux Techdays 2012, j'ai eu le plaisir d'annoncer la sortie de la Béta 2 de Mishra Reader. C'est quoi ? Pour les utilisateurs, c'est une vraie expérience de lecture de flux RSS sur Windows. Rien à voir avec les produit...
Cliquez pour lire la suite de l'article par Vko
Logiciels
Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning
|