Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C++

C++ प्रोग्राम में fread() फ़ंक्शन


दिया गया कार्य C++ में fread() के कार्य को दिखाना है। इस लेख में हम उन विभिन्न पैरामीटर को भी देखेंगे जो fread() को पास किए जाते हैं और यह फ़ंक्शन क्या लौटाता है।

fread() C++ का एक अंतर्निहित फ़ंक्शन है जो स्ट्रीम से डेटा का एक ब्लॉक पढ़ता है। यह फ़ंक्शन स्ट्रीम से "size" बाइट्स प्रत्येक के कई ऑब्जेक्ट्स गिनता है और उन्हें बफर मेमोरी में संग्रहीत करता है, फिर स्थिति पॉइंटर पढ़े गए बाइट्स की कुल मात्रा से आगे बढ़ जाता है। यदि सफल होता है तो पढ़े गए बाइट्स की मात्रा size * count होगी।

सिंटैक्स

fread(void *buffer, size_t size, size_t count, FILE *file_stream);

पैरामीटर

इस फ़ंक्शन को सभी 4 पैरामीटर की आवश्यकता होगी। आइए पैरामीटर को समझते हैं।

  • buffer − यह एक बफर मेमोरी ब्लॉक का पॉइंटर है जहां स्ट्रीम से पढ़े गए बाइट्स संग्रहीत होते हैं।

  • size − यह पढ़े जाने वाले प्रत्येक तत्व के आकार को बाइट्स में परिभाषित करता है। (size_t unsigned int है)।

  • count − पढ़े जाने वाले तत्वों की संख्या।

  • file_stream − फ़ाइल स्ट्रीम का पॉइंटर जिससे हम बाइट्स पढ़ना चाहते हैं।

वापसी मान

सफलतापूर्वक पढ़े गए तत्वों की संख्या लौटाई जाती है।

यदि कोई पढ़ने की त्रुटि होती है या यह फ़ाइल के अंत तक पहुंच जाता है तो लौटाए गए तत्वों की संख्या count चर से भिन्न होगी।

उदाहरण

#include <bits/stdc++.h> #include <cstdio> using namespace std; int main() {    FILE* file_stream;    char buf[100];    file_stream = fopen("tp.txt", "r");    while (!feof(file_stream)) //will read the file {       // will read the contents of the file.       fread(buf, sizeof(buf), 1, file_stream);       cout << buf;    }    return 0; }

मान लें कि tp.txt फ़ाइल में निम्नलिखित सामग्री है

tutorialspoint

Contribution

anything here

आउटपुट

यदि हम उपरोक्त कोड चलाते हैं तो यह निम्नलिखित आउटपुट उत्पन्न करेगा −

tutorialspoint Contribution anything here

आइए उदाहरण लें और जांचें कि जब count शून्य हो और size शून्य हो तो आउटपुट क्या होगा।

उदाहरण

#include <iostream> #include <cstdio> using namespace std; int main() {    FILE *fp;    char buffer[100];    int retVal;    fp = fopen("tpempty.txt","rb");    retVal = fread(buffer,sizeof(buffer),0,fp);    cout << "The count = 0, then return value = " << retVal << endl;    retVal = fread(buffer,0,1,fp);    cout << "The size = 0, then value = " << retVal << endl;    return 0; }

आउटपुट

यदि हम उपरोक्त कोड चलाते हैं तो यह निम्नलिखित आउटपुट उत्पन्न करेगा −

The count = 0, then return value = 0 The size = 0, then value = 0

  1. C++ में डौबली लिंक्ड लिस्ट का आकार ढूंढना C++ में डौबली लिंक्ड लिस्ट का आकार ढूंढना

    इस समस्या में, हमें एक डौबली लिंक्ड लिस्ट दी गई है। हमारा कार्य C++ में डौबली लिंक्ड लिस्ट का आकार ढूंढने के लिए एक प्रोग्राम बनाना है। डौबली लिंक्ड लिस्ट एक विशेष प्रकार की लिंक्ड लिस्ट है जिसमें नेविगेशन दोनों तरीकों से संभव है, आगे और पीछे आसानी से सिंगल लिंक्ड लिस्ट की तुलना में। डौबली लिंक्ड ल

  1. - C++ STL में multimap size() फंक्शन

    C++ STL में Multimap क्या है? Multimap एक associative container है जो map container के समान होता है। यह key-value और mapped value के संयोजन से बने तत्वों को एक विशिष्ट क्रम में संग्रहीत करता है। एक multimap container में एक ही key से जुड़े कई तत्व हो सकते हैं। डेटा आंतरिक रूप से हमेशा उससे जुड़ी ke

  1. C++ में रिकर्सन का उपयोग करके ट्री का आकार गणना करने का प्रोग्राम C++ में रिकर्सन का उपयोग करके ट्री का आकार गणना करने का प्रोग्राम

    इस समस्या में, हमें एक ट्री दिया गया है और हमारा कार्य रिकर्सन का उपयोग करके ट्री का आकार गणना करने के लिए एक प्रोग्राम बनाना है। ट्री का आकार ट्री में मौजूद नोड्स की कुल संख्या है। आइए एक उदाहरण से समस्या को समझते हैं, उपरोक्त ट्री का आकार 5 है। ट्री का आकार खोजने के लिए, हमें लेफ्ट सबट्री और