शून्य अक्सर सफलता का मतलब है क्योंकि शून्य केवल पूर्णांक मान गलत का आकलन है। अन्य सभी पूर्णांक मान सत्य पर मूल्यांकन करते हैं और वे विभिन्न त्रुटि कोडों के लिए हैं।
यह थोड़ा अजीब और तार्किक रूप से उल्टा प्रतीत हो सकता है, लेकिन क्योंकि सफलता केवल सफलता है और त्रुटियां अलग-अलग हो सकती हैं, उपर्युक्त सम्मेलन अक्सर चुना जाता है।
वास्तव में, यह सबसे तर्कसंगत सम्मेलन है यदि किसी फ़ंक्शन का रिटर्न वैल्यू न केवल सफलता/विफलता संकेतक के रूप में उपयोग किया जाता है, बल्कि एक त्रुटि कोड के रूप में भी किया जाता है। त्रुटि कोड संग्रहीत है, तो एक अतिरिक्त उत्पादन पैरामीटर में कहते हैं, तो अधिक समझ में आता है विफलता के लिए सफलता के लिए 1
और 0
लौटने।
कल्पना कीजिए कि हालत 0
के मामले में किया जा रहा है सफलता होगा:
if (errcode = func()) {
/* error handling */
}
बनाम अधिक बोझिल:
if ((errcode = func()) != 1) {
/* error handling */
}
स्रोत
2011-09-20 10:23:08
ऐतिहासिक कारणों से। http://stackoverflow.com/q/329950/184998 –
ऊपर के लिंक में दूसरे और चौथे जवाब वास्तव में अच्छा कर रहे हैं: पिछली बार इस बाहर आया कोई भी एक निश्चित जवाब नहीं था। –