GCC 7.3 - 5. Diagnostics

5 डायग्नोस्टिक्स




gcc

5 डायग्नोस्टिक्स

निर्देश ' #error ' प्रीप्रोसेसर के कारण घातक त्रुटि की सूचना देता है। ' # शेर ' के बाद शेष पंक्ति बनाने वाले टोकन का उपयोग त्रुटि संदेश के रूप में किया जाता है।

आप एक शर्त के अंदर ' # शेर ' का उपयोग करेंगे जो मापदंडों के संयोजन का पता लगाता है जिसे आप जानते हैं कि कार्यक्रम ठीक से समर्थन नहीं करता है। उदाहरण के लिए, यदि आप जानते हैं कि प्रोग्राम VAX पर ठीक से नहीं चलेगा, तो आप लिख सकते हैं

#ifdef __vax__
#error "Won't work on VAXen.  See comments at get_last_object."
#endif

यदि आपके पास कई कॉन्फ़िगरेशन पैरामीटर हैं जो स्थापना के अनुरूप होना चाहिए, तो आप विसंगतियों का पता लगाने के लिए सशर्त का उपयोग कर सकते हैं और ' #error ' के साथ रिपोर्ट कर सकते हैं। उदाहरण के लिए,

#if !defined(FOO) && defined(BAR)
#error "BAR requires FOO."
#endif

निर्देश direct #warning ’' #error ’ की तरह है, लेकिन पूर्वप्रक्रमक के कारण चेतावनी जारी करता है और अनुत्पादक जारी रखता है। War #warning ’के बाद के टोकन का उपयोग चेतावनी संदेश के रूप में किया जाता है।

आप अप्रचलित हेडर फ़ाइलों में ' #warning ' का उपयोग कर सकते हैं, एक संदेश के साथ उपयोगकर्ता को हेडर फ़ाइल के लिए निर्देशित किया जाना चाहिए जो इसके बजाय उपयोग किया जाना चाहिए।

न तो macro # शेर ’और न ही ning #वारिंग ’ मैक्रो अपने तर्क का विस्तार करते हैं। आंतरिक व्हॉट्सएप अनुक्रम प्रत्येक को एक एकल स्थान के साथ बदल दिया जाता है। लाइन में पूर्ण टोकन शामिल होना चाहिए। इन निर्देशों के तर्क को एक एकल स्ट्रिंग स्थिर बनाना बुद्धिमानी है; यह एपोस्ट्रोफ और इस तरह की समस्याओं से बचा जाता है।