मैं इंटरनेट का उपयोग करना चाहिये कि पर विरासत सॉफ्टवेयर और बुरे ट्यूटोरियल का एक बहुत में देखते हैं exit(-1)
, return -1
या इसी तरह के "असामान्य समाप्ति" का प्रतिनिधित्व करने के लिए। समस्या यह है कि, POSIX में कम से कम, -1
कभी नहीं रहा है और एक मान्य स्थिति कोड नहीं है। man 3 exit
कि दिखाता exit()
रिटर्न के मूल्य status & 0377
माता-पिता के लिए, जिसका अर्थ है कि -1
हो जाता है 255
। EXIT_FAILURE
पोर्टेबिलिटी के लिए नॉन-पॉसिक्स सिस्टम पर सिफारिश की जाती है। लेकिन "EXIT_FAILURE 1 के अलावा कुछ और हो सकता है" के साथ संयोजन के रूप में "-1 का मतलब असामान्य समाप्ति" नहीं है, यह दर्शाता है कि वे स्पष्ट रूप से मानते हैं कि "-1" गैर-पॉसिक्स सिस्टम पर भी पारंपरिक है।
यहां एक StackOverflow प्रश्न का उदाहरण दिया गया है जो इसे समाप्त करता है । सॉफ्टवेयर "अवास्तविक" भी एक प्रोग्राम का एक उदाहरण है जो प्रोग्राम exit(-1)
को समाप्त करने के लिए उपयोग करता है। व्यवहार में, इससे इंटरफ़ेस करना मुश्किल हो जाता है systemd
।
यह विरोधी पैटर्न कहां से आया? क्या यह किसी संदर्भ में मान्य है?
unsigned char
।
char
क्योंकि इसके मूल्यों की सीमा -128 से 127 है। आगे, मैंने पहले ही कहा "-1" मेरे प्रश्न शरीर में "255" में परिवर्तित हो जाता है। ।