त्रुटि कोड क्यों उपेक्षित हैं?


12

बहुत बार मैं सी कोड की वापसी में त्रुटि कोड की उपेक्षा करता हूं, जैसे return -EINVALइसके बजाय return EINVAL। क्यों इस्तेमाल किया उपेक्षा?

c 

जवाबों:


8

कई UNIXEN पर, syscalls के लिए कन्वेंशन यह है कि वे त्रुटि के मामले में उपेक्षित त्रुटि कोड, और सफलता के मामले में वास्तविक मान लौटाते हैं।

यह सफलता के मामले में -1सकारात्मक त्रुटि कोड errnoया वास्तविक मूल्य के साथ त्रुटियों के लिए उपयोगकर्ता के अंतरिक्ष पक्ष में अनुवादित है ।

रिटर्न वैल्यू के इस दोहरे उद्देश्य की आवश्यकता इसलिए है क्योंकि इस तरह की भाषा में कई रिटर्न परेशान करने वाले होते हैं, क्योंकि आपको अंतिम त्रुटि के लिए आउट-पैरामीटर्स में पास होने का सहारा लेना होगा।


4

यह एक सम्मेलन है; बहुत सारे कार्य सफलता पर एक सकारात्मक परिणाम और विफलता पर एक नकारात्मक परिणाम लौटाते हैं। प्रारंभ में, यह यूनिक्स प्रक्रिया के रिटर्न कोड से संबंधित था। एक सफलता 0 से इंगित की गई थी।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.