आकार का चार, int, लंबा डबल ... एक कंपाइलर से दूसरे में भिन्न हो सकता है। लेकिन क्या मेरे पास सी ++ 11 या सी 11 मानक के अनुसार गारंटी है कि किसी भी हस्ताक्षरित और हस्ताक्षरित मौलिक अभिन्न प्रकार का आकार समान है?क्या मेरे पास गारंटी है कि आकार (प्रकार) == आकार (हस्ताक्षरित प्रकार)?
उत्तर
सी ++ 11 स्टैंडर्ड पूर्णांक प्रकार के बारे में कहते हैं:
(§3.9.1/3) मानक पर हस्ताक्षर किए पूर्णांक प्रकारों में से प्रत्येक के लिए, वहाँ एक इसी (लेकिन अलग) मानक अहस्ताक्षरित पूर्णांक प्रकार मौजूद है : "हस्ताक्षर किए गए चार", "हस्ताक्षरित लघु int", "हस्ताक्षरित int", "हस्ताक्षरित लंबे int", और "हस्ताक्षरित लंबे लंबे int", जिनमें से प्रत्येक एक ही मात्रा में भंडारण पर कब्जा करता है और उसी संरेखण आवश्यकताओं (3.11) के रूप में है संबंधित हस्ताक्षरित पूर्णांक प्रकार; यानी, प्रत्येक हस्ताक्षरित पूर्णांक प्रकार में एक ही ऑब्जेक्ट प्रतिनिधित्व होता है जो इसके संबंधित हस्ताक्षरित पूर्णांक प्रकार के रूप में होता है। इसी प्रकार, विस्तारित हस्ताक्षरित पूर्णांक प्रकारों में से प्रत्येक के लिए भंडारण और संरेखण आवश्यकताओं की एक ही मात्रा के साथ एक संबंधित विस्तारित हस्ताक्षरित पूर्णांक प्रकार मौजूद है। [...]
तो उत्तर हाँ है।
सी 11 के लिए, वहाँ एक इसी बयान यहां (इस N1570 से है):
(§6.2.5/6) पर हस्ताक्षर किए पूर्णांक प्रकारों में से प्रत्येक के लिए, वहाँ है एक इसी (लेकिन अलग) अहस्ताक्षरित पूर्णांक प्रकार (कीवर्ड अहस्ताक्षरित साथ नामित) (संकेत जानकारी सहित) भंडारण की एक ही राशि का उपयोग करता है और एक ही संरेखण आवश्यकताएं होती हैं [...]
हाँ, वहाँ एक पूर्ण गारंटी नहीं है कि है आकार (हस्ताक्षरित प्रकार) आकार के बराबर है (हस्ताक्षरित प्रकार) हस्ताक्षर किए जाने के बाद ही इसकी सीमा बढ़ाने के लिए हस्ताक्षरित प्रकार की नकारात्मक संख्याओं की जगह ले रही है।
मानक जनादेशों में कुछ भी नहीं है जो 'UINT_MAX > INT_MAX'; साइन-परिमाण मशीनें उन्हें बराबर बना सकती हैं। – supercat
- 1. फ़ॉन्ट आकार और प्रकार CATextLayer
- 2. फ़ंक्शन पॉइंटर के आकार के बारे में क्या गारंटी है?
- 3. उसी आकार के हस्ताक्षरित/हस्ताक्षरित रूपांतरित करने के लिए कोई अनुपालन तरीका
- 4. गारंटी है कि प्रकार परिवारों कुछ वर्गों प्राप्त होगा
- 5. सूची-शैली-बुलेट प्रकार का आकार बढ़ाएं
- 6. S3 प्रत्यक्ष फ़ाइल आकार और प्रकार
- 7. आकार के प्रकार के अनुसार टेम्पलेट विशेषज्ञता
- 8. क्या मेरे पास प्रत्येक अलग-अलग प्रकार के विरासत वर्ग
- 9. रैम विभिन्न डेटा प्रकार के आकार संभाल सकता है?
- 10. आकार
- 11. मेरे कस्टम फ़ाइल प्रकार
- 12. क्या आकार बाइट्स की संख्या या सी में किसी प्रकार के ऑक्टेट्स की संख्या लौटाता है?
- 13. dequeueReusableCellWithIdentifier मेरे कस्टम प्रकार
- 14. UIActionSheet शीर्षक स्ट्रिंग का फ़ॉन्ट प्रकार और आकार बदलें
- 15. जांचें कि ऑब्जेक्ट्स प्रकार एक अमूर्त प्रकार
- 16. सी ++ 128/256-बिट निश्चित आकार पूर्णांक प्रकार
- 17. प्लॉट्स में फ़ॉन्ट आकार/प्रकार नहीं बदल सकता
- 18. char का आकार * int * के आकार के समान है?
- 19. आकार क्या करता है?
- 20. पाइथन बफर प्रकार क्या है?
- 21. जावा मुझे बताता है कि मेरे एप्लेट में हस्ताक्षरित और हस्ताक्षरित कोड दोनों शामिल हैं?
- 22. फ़ायरफ़ॉक्स में इनपुट प्रकार = "फ़ाइल" ब्राउज़ बटन का आकार बदलें?
- 23. ईमेल पते के लिए स्वीकार्य फ़ील्ड प्रकार और आकार?
- 24. अनुशंसित कुंजी आकार और जीएनयूपीजी के लिए प्रकार?
- 25. एक प्रकार के आकार में डिफ़ॉल्ट मान संरचना
- 26. "सी" आकार किसी प्रकार या चर के साथ
- 27. कैसे पता चले कि एक प्रकार किस प्रकार है?
- 28. क्या कोई इंटरेन्स हस्ताक्षरित या हस्ताक्षरित है?
- 29. सूचक का आकार क्या है?
- 30. क्यों डिवाइस पर मेरे ऐप आकार APK की अपेक्षा अलग या प्ले करता दुकान आकार
मुझे तब तक उम्मीद करनी चाहिए जब तक कि किसी प्रकार का असमानता समझ में न आए, इस मामले में, मुझे यह सुनकर खुशी होगी। – chris
बस एक तरफ के रूप में, आकार का चार हमेशा होता है 1. चार में 16 बिट्स की तरह असामान्य आकार हो सकता है, लेकिन तब आकार का आकार अभी भी 1 होगा और 32 बिट प्रकार का आकार 2. –