मैं 64-बिट संकलन को समझने के लिए कोशिश कर रहा हूँ, इसलिए मैं सी ++ बिल्डर में एक छोटे से परीक्षण किया:64-बिट सिस्टम पर बड़े पॉइंटर्स का क्या फायदा है?
int i = 12345;
ShowMessage(i);
int *pi = &i;
ShowMessage(sizeof(pi));
Largeint li = 9223372036854775807;
ShowMessage(li);
Largeint *pli = &li;
ShowMessage(sizeof(pli));
जब मैं 64 बिट, सूचक के आकार के रूप में इस कार्यक्रम को संकलित 8 बाइट्स बढ़ जाती है (64 बिट्स)।
बढ़ते सूचक आकार का क्या फायदा है?
ए '4'-बाइट पॉइंटर केवल ~ 4 जीबी मेमोरी को संबोधित कर सकता है। यह एक आधुनिक कार्यक्रम में तेजी से भाग सकता है। – BoBTFish
एक सूचक का आकार आमतौर पर अंतर्निहित प्रणाली को दर्शाता है। यदि आप 32-बिट सिस्टम पर हैं, तो आपको 32-बिट पॉइंटर्स मिलते हैं, और 64-बिट सिस्टम पर आपको 64-बिट पॉइंटर्स मिलते हैं। यह वास्तव में कुछ और करने के लिए समझ में नहीं आता है। –
बेशक कि 64 बिट्स सिस्टम में 32 बिट उपप्रणाली हैं। इसका मतलब 32 बिट प्रक्रिया प्रति 4 जीबी सीमा है, लेकिन कुल सिस्टम मेमोरी तब और अधिक हो सकती है। – MSalters