LONG LONG INT

Fermé
FEDORA - 29 mai 2009 à 21:13
mamiemando Messages postés 33401 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 28 novembre 2024 - 30 mai 2009 à 14:48
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 33401 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 28 novembre 2024 7 804
30 mai 2009 à 14:48
Oui 1 << 64 c'est tout de suite un peu plus rapide.
3
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