LONG LONG INT

FEDORA -  
mamiemando Messages postés 34243 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

J'ai un problème qui concerne l'utilisation du nombre codés sur 64 bits.
(unsigned long long int)max=(unsigned long long int)pow(2,64);
ne marche pas et m'affiche une warning : integer constant is too large for 'long' type
Merci

2 réponses

mamiemando Messages postés 34243 Date d'inscription   Statut Modérateur Dernière intervention   7 898
 
Oui 1 << 64 c'est tout de suite un peu plus rapide.
3
Manu
 
Bonjour,

J'ai un problème qui concerne l'utilisation du nombre codés sur 64 bits.
(unsigned long long int)max=(unsigned long long int)pow(2,64);


Normal, 2 à la puissance 64 a besoin de 65 bits.

Par ailleurs, ce n'est pas une pratique très recommandée que d'utiliser pow() fondé sur des calculs de logarithmes et exponentielles pour calculer une puissance de 2.

Manu
1