Sur Mac OS X en C++ sur un PROCESSEUR 64 bits, il y a un type qui est en 64 bits?
Je ne peux pas utiliser "long long"; que dois-je utiliser?
- Pourquoi ne pouvez-vous pas utiliser
long long
? Est-ce que votre compilateur ne pas le soutenir? - Quel compilateur que vous utilisez?
- Ne Darwin/MacOSX soutien de taille fixe entier typedefs, comme int64_t? Si oui, j'aimerais l'utiliser. Voir opengroup.org/onlinepubs/000095399/basedefs/stdint.h.html pour plus de détails.
Vous devez vous connecter pour publier un commentaire.
En supposant que Snow Leopard (Mac OS X 10.6.2 - Intel), puis "long" est 64-bits avec le compilateur par défaut.
Spécifier "g++ -m64" et il sera probablement 64 bits sur des versions antérieures de trop.
Testé avec:
De la compilation avec GCC 4.7.1 sur Mac OS X 10.7.5 avec l'option
-std=c99
, la sortie du programme est plus vaste. Grâce à apalopohapa pour souligner la surveillancelong long
etc ont été absents de l'original.int64_t
. C'est la norme pour une raison.-std=c99
. Le code daté 2010-03-05 produit de nombreuses valeurs supplémentaires lorsqu'il est compilé avec-std=c99
. Voir mise à jour et merci pour la question.Inclure
<stdint.h>
ou<inttypes.h>
(le plus tard est trouvé sur quelques autres compilateurs, mais les deux sont fournis par Apple compilateur), et l'utilisationuint64_t
etint64_t
. Ils sont 64 bits sur 32 bits et 64 bits des cibles.