C में calloc क्या है?
Calloc () सी में एक ही आकार के होने स्मृति के कई ब्लॉकों के आवंटन के लिए प्रयोग किया जाता है एक समारोह है। यह एक डायनामिक मेमोरी एलोकेशन फंक्शन है, जो मेमोरी स्पेस को जटिल डेटा संरचनाओं जैसे कि सरणियों और संरचनाओं को आवंटित करता है और मेमोरी को एक शून्य पॉइंटर लौटाता है। कॉलोक सन्निहित आवंटन के लिए है।
Malloc फ़ंक्शन का उपयोग मेमोरी स्पेस के एक ब्लॉक को आवंटित करने के लिए किया जाता है जबकि C में कॉलोक फ़ंक्शन का उपयोग मेमोरी स्पेस के कई ब्लॉक को आवंटित करने के लिए किया जाता है। C प्रोग्रामिंग में कॉलोक द्वारा आवंटित प्रत्येक ब्लॉक एक ही आकार का है।
कॉलोक () सिंटेक्स:
ptr = (cast_type *) calloc (n, size);
- C में calloc के उपरोक्त कथन उदाहरण का उपयोग उसी आकार के n मेमोरी ब्लॉक को आवंटित करने के लिए किया जाता है।
- मेमोरी स्पेस आवंटित होने के बाद, तब सभी बाइट्स को शून्य से आरंभ किया जाता है।
- पॉइंटर जो वर्तमान में आवंटित मेमोरी स्पेस के पहले बाइट पर है।
जब भी मेमोरी स्पेस आवंटित करने में कोई त्रुटि होती है जैसे कि मेमोरी की कमी, तो नीचे दिए गए कॉलोक उदाहरण में दिखाए गए अनुसार एक अशक्त सूचक लौटाया जाता है।
कॉलोक का उपयोग कैसे करें
सी में नीचे कॉलोक कार्यक्रम एक अंकगणितीय अनुक्रम के योग की गणना करता है।
#includeint main() {int i, * ptr, sum = 0;ptr = calloc(10, sizeof(int));if (ptr == NULL) {printf("Error! memory not allocated.");exit(0);}printf("Building and calculating the sequence sum of the first 10 terms \ n ");for (i = 0; i < 10; ++i) { * (ptr + i) = i;sum += * (ptr + i);}printf("Sum = %d", sum);free(ptr);return 0;}
C उदाहरण में कॉलोक का परिणाम:
Building and calculating the sequence sum of the first 10 termsSum = 45