मैंने कुछ कार्यक्रमों में निम्नलिखित कथन देखा है, अधिकांश/सभी लिनक्स के लिए किए जाने लगते हैं।पढ़ें (एफडी, न्यूल, 0); यह क्या करता है? क्या यह अच्छी तरह से परिभाषित है?
rv = read(fd, NULL, 0);
कुछ कार्यक्रमों में यह एक ही बयान में, एक लूप में है।
वास्तव में यह क्या करता है?
मैन पेज है कि इस तरह एक मंगलाचरण या त्रुटियों की जांच नहीं हो सकता है ...
वापसी मान का क्या महत्व है कहते हैं?
किस प्रकार के फाइल डिस्क्रिप्टर समर्थित हैं?
और यदि rv==0
उदाहरण से "कोई त्रुटि नहीं" को अलग करने के लिए कैसे करें "सॉकेट बंद"।
यह मौलिक रूप से गैर-पोर्टेबल लगता है। लिनक्स मैन (3) पृष्ठ पढ़ता है: 'शून्य बाइट्स के पढ़ने() अनुरोधों के लिए त्रुटि जांच करने के लिए कार्यान्वयन की अनुमति है, लेकिन आवश्यक नहीं है।' POSIX कहता है: किसी भी कार्रवाई से पहले, और यदि nbyte शून्य है, तो पढ़ें() फ़ंक्शन * हो सकता है * त्रुटियों का पता लगाने और वापस कर सकता है। – Duck