मैं "लंबे समय तक" उपयोग नहीं कर सकता; मुझे क्या उपयोग करना चाहिए?64-बिट CPU पर सी ++ में मैक ओएस एक्स पर, क्या 64 बिट्स का एक प्रकार है?
उत्तर
हिम तेंदुए (मैक ओएस एक्स 10.6.2 - इंटेल) मानते हैं, तो 'लंबा' डिफ़ॉल्ट कंपाइलर के साथ 64-बिट्स है।
'g ++ -m64' निर्दिष्ट करें और यह पिछले संस्करणों पर भी 64-बिट्स होगा।
1 = sizeof(char)
1 = sizeof(unsigned char)
2 = sizeof(short)
2 = sizeof(unsigned short)
4 = sizeof(int)
4 = sizeof(unsigned int)
8 = sizeof(long)
8 = sizeof(unsigned long)
4 = sizeof(float)
8 = sizeof(double)
16 = sizeof(long double)
8 = sizeof(size_t)
8 = sizeof(ptrdiff_t)
8 = sizeof(time_t)
8 = sizeof(void *)
8 = sizeof(char *)
8 = sizeof(short *)
8 = sizeof(int *)
8 = sizeof(long *)
8 = sizeof(float *)
8 = sizeof(double *)
8 = sizeof(int (*)(void))
8 = sizeof(double (*)(void))
8 = sizeof(char *(*)(void))
साथ परीक्षण किया गया:
i686-apple-darwin10-g++-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5646) (dot 1) Copyright (C) 2007 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
विकल्प -std=c99
साथ मैक ओएस एक्स 10.7.5 पर जीसीसी 4.7.1 के साथ संकलन, कार्यक्रम से उत्पादन अधिक व्यापक है। apalopohapa पर long long
आदि की निगरानी को इंगित करने के लिए धन्यवाद मूल से गायब था।
1 = sizeof(char)
1 = sizeof(unsigned char)
2 = sizeof(short)
2 = sizeof(unsigned short)
4 = sizeof(int)
4 = sizeof(unsigned int)
8 = sizeof(long)
8 = sizeof(unsigned long)
4 = sizeof(float)
8 = sizeof(double)
16 = sizeof(long double)
8 = sizeof(size_t)
8 = sizeof(ptrdiff_t)
8 = sizeof(time_t)
8 = sizeof(long long)
8 = sizeof(unsigned long long)
8 = sizeof(uintmax_t)
1 = sizeof(int8_t)
2 = sizeof(int16_t)
4 = sizeof(int32_t)
8 = sizeof(int64_t)
1 = sizeof(int_least8_t)
2 = sizeof(int_least16_t)
4 = sizeof(int_least32_t)
8 = sizeof(int_least64_t)
1 = sizeof(int_fast8_t)
2 = sizeof(int_fast16_t)
4 = sizeof(int_fast32_t)
8 = sizeof(int_fast64_t)
8 = sizeof(uintptr_t)
8 = sizeof(void *)
8 = sizeof(char *)
8 = sizeof(short *)
8 = sizeof(int *)
8 = sizeof(long *)
8 = sizeof(float *)
8 = sizeof(double *)
8 = sizeof(int (*)(void))
8 = sizeof(double (*)(void))
8 = sizeof(char *(*)(void))
1 = sizeof(struct { char a; })
2 = sizeof(struct { short a; })
4 = sizeof(struct { int a; })
8 = sizeof(struct { long a; })
4 = sizeof(struct { float a; })
8 = sizeof(struct { double a; })
16 = sizeof(struct { char a; double b; })
16 = sizeof(struct { short a; double b; })
16 = sizeof(struct { long a; double b; })
4 = sizeof(struct { char a; char b; short c; })
16 = sizeof(struct { char a; char b; long c; })
4 = sizeof(struct { short a; short b; })
6 = sizeof(struct { char a[3]; char b[3]; })
8 = sizeof(struct { char a[3]; char b[3]; short c; })
16 = sizeof(struct { long double a; })
32 = sizeof(struct { char a; long double b; })
16 = sizeof(struct { char a; long long b; })
16 = sizeof(struct { char a; uintmax_t b; })
इसके अतिरिक्त, यदि आप
int64_t * अल * पर वास्तव में
आपके द्वारा पोस्ट की गई तालिका पर निर्भर करना खराब सलाह है। यदि आप 64 बिट्स चाहते हैं, तो 'int64_t' का उपयोग करें। यह एक कारण के लिए मानक है। – asveikau
शामिल <stdint.h>
या <inttypes.h>
(बाद में कुछ और compilers पर पाया जाता है, लेकिन दोनों एप्पल संकलक द्वारा प्रदान की जाती हैं), और uint64_t
और int64_t
का उपयोग करें। वे 32-बिट और 64-बिट दोनों लक्ष्यों पर 64-बिट हैं।
- 1. मैक ओएस एक्स पर जेनोटिफ़ाई?
- 2. मैकबुक पर मैक ओएस एक्स पर emacs
- 3. मैक ओएस एक्स पर MySQL पर शॉर्टकट?
- 4. सी #/मैक ओएस एक्स
- 5. मैक ओएस एक्स पर फ़ाइल का प्रकार कैसे प्राप्त करें?
- 6. 64-बिट ओएस में 64-बिट CPU पर X86-64 पायथन चलाने के क्या लाभ हैं?
- 7. मैक ओएस एक्स (सी ++)
- 8. मैक ओएस एक्स पर मानक सी लाइब्रेरी कहां है?
- 9. बिल्डिंग गूगल Breakpad मैक ओएस एक्स पर
- 10. मैक ओएस एक्स पर क्लिपबोर्ड निगरानी | जावा
- 11. क्या मैक ओएस एक्स पर फ्रीग्लूट बनाना संभव है?
- 12. TextMate डिफ़ॉल्ट पाठ मैक ओएस एक्स पर
- 13. मैक ओएस एक्स शेर पर अपाचे त्रुटि
- 14. मैक ओएस एक्स
- 15. मैक ओएस एक्स
- 16. मैक ओएस एक्स
- 17. मैक ओएस एक्स
- 18. मैक ओएस एक्स
- 19. मैक ओएस एक्स
- 20. मैक ओएस एक्स पर MySQL कनेक्टर/सी कैसे स्थापित करें?
- 21. मैक ओएस एक्स
- 22. मैक ओएस एक्स
- 23. मैक ओएस एक्स
- 24. मैक ओएस एक्स
- 25. मैक ओएस एक्स
- 26. मैक ओएस एक्स टर्मिनल
- 27. मैक ओएस एक्स
- 28. मैक ओएस एक्स
- 29. मैक ओएस एक्स 10.6
- 30. मैक ओएस एक्स शेर
आप 'लंबे समय तक क्यों नहीं उपयोग कर सकते हैं? क्या आपका कंपाइलर इसका समर्थन नहीं करता है? –
आप किस कंपाइलर का उपयोग कर रहे हैं? – Cameron
क्या डार्विन/मैकोज़क्स निश्चित आकार पूर्णांक टाइपिफ़ीफ का समर्थन करता है, जैसे int64_t? यदि ऐसा है, तो मैं उन का उपयोग करूंगा। विवरण के लिए http://www.opengroup.org/onlinepubs/000095399/basedefs/stdint.h.html देखें। – Void