सी ++ मॉलोक () - सी ++ मानक पुस्तकालय

सी ++ में मॉलॉक () फ़ंक्शन अनइंस्टॉल किए गए मेमोरी के ब्लॉक को आवंटित करता है और आवंटन सफल होने पर आवंटित मेमोरी ब्लॉक के पहले बाइट के लिए एक शून्य पॉइंटर लौटाता है।

सी ++ में मॉलॉक () फ़ंक्शन अनइंस्टॉल किए गए मेमोरी के ब्लॉक को आवंटित करता है और आवंटन सफल होने पर आवंटित मेमोरी ब्लॉक के पहले बाइट के लिए एक शून्य पॉइंटर लौटाता है।

यदि आकार शून्य है, तो लौटाया गया मान लाइब्रेरी के कार्यान्वयन पर निर्भर करता है। यह एक शून्य सूचक हो सकता है या नहीं।

मॉलोक () प्रोटोटाइप

 शून्य * मालॉक (size_t आकार);

यह फ़ंक्शन हेडर फ़ाइल में परिभाषित किया गया है।

malloc () पैरामीटर

  • आकार: एक अहस्ताक्षरित अभिन्न मूल्य जो बाइट्स में मेमोरी ब्लॉक का प्रतिनिधित्व करता है।

malloc () रिटर्न वैल्यू

मालॉक () फ़ंक्शन रिटर्न:

  • फ़ंक्शन द्वारा आबंटित असमान स्मृति ब्लॉक के लिए एक सूचक।
  • अशक्त सूचक यदि आवंटन विफल हो जाता है।

उदाहरण 1: मॉलोक () फ़ंक्शन कैसे काम करता है?

 #include #include using namespace std; int main() ( int *ptr; ptr = (int*) malloc(5*sizeof(int)); if(!ptr) ( cout << "Memory Allocation Failed"; exit(1); ) cout << "Initializing values… " << endl << endl; for (int i=0; i<5; i++) ( ptr(i) = i*2+1; ) cout << "Initialized values" << endl; for (int i=0; i<5; i++) ( /* ptr(i) and *(ptr+i) can be used interchangeably */ cout << *(ptr+i) << endl; ) free(ptr); return 0; )

जब आप प्रोग्राम चलाते हैं, तो आउटपुट होगा:

 मानों को प्रारंभ करना … आरंभिक मान 1 3 5 7 9

उदाहरण 2: मॉलोक () आकार शून्य के साथ कार्य करता है

 #include #include using namespace std; int main() ( int *ptr = (int*) malloc(0); if(ptr==NULL) ( cout << "Null pointer"; ) else ( cout << "Address = " << ptr << endl; ) free(ptr); return 0; )

जब आप प्रोग्राम चलाते हैं, तो आउटपुट होगा:

 पता = 0x371530

दिलचस्प लेख...