हमने यहां काम पर एक चर्चा की थी कि क्यों फ्रेड और फ़्राइट प्रति सदस्य आकार लेते हैं और केवल बफर और आकार लेने के बजाय सदस्यों की संख्या को पढ़/लिखते हैं। इसके लिए एकमात्र उपयोग हम साथ आ सकते हैं यदि आप ऐसे structs की एक सरणी को पढ़ना/लिखना चाहते हैं जो प्लेटफार्म संरेखण द्वारा समान रूप से विभाजित नहीं हैं और इसलिए गद्देदार हैं लेकिन यह इस विकल्प को वारंट करने के लिए इतना आम नहीं हो सकता डिजाइन मेंफ़्रेड/fwrite आकार लेने के लिए तर्क क्या है और तर्क के रूप में गिनती है?
fread (3) से:
समारोह fread() डेटा के nmemb तत्वों पढ़ता है, प्रत्येक आकार बाइट्स लंबे, धारा से धारा के द्वारा की ओर इशारा किया, उन्हें दिए गए स्थान पर भंडारण पीटीआर द्वारा
समारोह fwrite() डेटा के nmemb तत्वों, प्रत्येक आकार बाइट्स लिखते हैं लंबे, करने के लिए धारा धारा के द्वारा की ओर इशारा किया, उन्हें स्थान ptr द्वारा दिए गए से प्राप्त करने के।
फ़्रेड() और fwrite() आइटम सफलतापूर्वक पढ़ने या लिखे गए (यानी, वर्णों की संख्या नहीं) को वापस लौटाएं। यदि कोई त्रुटि उत्पन्न होती है, या अंत-फ़ाइल तक पहुंच जाती है, तो वापसी मान एक छोटी वस्तु गणना (या शून्य) होती है।
हे यह एक अच्छा सवाल है। मैं हमेशा इसके बारे में सोचता हूं –
कृपया इस धागे को देखें: http://stackoverflow.com/questions/8589425/how-does-fread-really-work – Franken