] एक 4-बाइट वृद्धि में, अपेक्षित 1-बाइट वृद्धि के बजाय। इस विसंगति ने कई प्रोग्रामर को हैरान कर दिया है, जैसे कि प्रश्न:
वास्तविक आउटपुट:
0xbf8d63bc
आउटपुट में अंतर 4-बाइट वृद्धि के कारण है। जबकि अपेक्षित आउटपुट 1 बाइट की वृद्धि को दर्शाता है, वास्तविक आउटपुट 4-बाइट जंप को प्रदर्शित करता है, जिससे मेमोरी पते में एक ध्यान देने योग्य छलांग लगती है। &&& &]
Q: कैसे 4 बाइट्स पर जाएँ एक? फिर, आप int के बाइट्स के माध्यम से नेविगेट करने के लिए चार पॉइंटर को बढ़ा सकते हैं। int* p = & i; char* c = (char*) p; char x = c [1]; // एक इंटमें एक बाइट, इस उदाहरण में, int चर का पहला बाइट i को C [1] अभिव्यक्ति का उपयोग करके एक्सेस किया गया है। आप int के भीतर बाद के बाइट्स तक पहुंचने के लिए C पॉइंटर को बढ़ा सकते हैं। इंट पॉइंटर्स के लिए 4-बाइट वेतन वृद्धि के पीछे के कारणों को समझकर, आप सामान्य नुकसान को रोक सकते हैं और अधिक कुशल कोड लिख सकते हैं।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3