C में अतिरिक्त कोष्ठक: ऑपरेटर प्राथमिकता से परे
C में, कोष्ठक का उपयोग न केवल ऑपरेटर प्राथमिकता को प्रभावित करने के लिए बल्कि विभिन्न अन्य उद्देश्यों के लिए भी किया जाता है . अप्रत्याशित व्यवहार से बचने के लिए इन अतिरिक्त संदर्भों को समझना महत्वपूर्ण है। :
कोष्ठक फ़ंक्शन कॉल में तर्क-निर्भर नाम लुकअप को रोक सकते हैं। उदाहरण के लिए, (fun)(arg) fun(arg) के विपरीत, कॉलिंग स्कोप में किसी फ़ंक्शन को हल करने से fun को रोकता है।
सूची संदर्भों में अल्पविराम ऑपरेटर को सक्षम करना:
सूचियों के भीतर (उदाहरण के लिए, फ़ंक्शन तर्क, प्रारंभकर्ता सूचियां), कोष्ठक अल्पविराम ऑपरेटर को सक्षम करते हैं। उदाहरण के लिए, a, (b, c), d, a, b, c, d से भिन्न व्यवहार करता है, क्योंकि अल्पविराम ऑपरेटर कोष्ठक के भीतर लागू होता है।की अस्पष्टता का समाधान वेक्सिंग पार्स:
कोष्ठक जटिल वाक्यविन्यास को स्पष्ट कर सकते हैं, जैसे कि "अधिकांश वेक्सिंग पार्स।" कोष्ठक के बिना, घोषणाओं और फ़ंक्शन कॉल दोनों से मिलते-जुलते निर्माणों को घोषणाओं के रूप में व्याख्या किया जा सकता है। और decltype((e)) अलग-अलग परिणाम देते हैं। पूर्व आमतौर पर एक प्रतिद्वंद्विता संदर्भ को दर्शाता है, जबकि बाद वाला अक्सर एक प्रतिद्वंद्विता संदर्भ से मेल खाता है। कोष्ठक इस व्यवहार को नियंत्रित करते हैं।प्रीप्रोसेसर मैक्रो त्रुटियों को रोकना:
कोष्ठक मैक्रो उपयोग से संबंधित समस्याओं को कम कर सकते हैं। वे अवांछित ऑपरेटर प्राथमिकता को रोकते हैं और पैरामीटर सूची को परिसीमित करके मैक्रो तर्कों के भीतर अल्पविराम को सक्षम करते हैं। कोड को नुकसान पहुँचाने के लिए, उन्हें विवेकपूर्ण तरीके से नियोजित करना आवश्यक है। अनावश्यक नेस्टिंग से बचें और यदि लागू हो तो आधुनिक सी 11 सिंटैक्स जैसी वैकल्पिक तकनीकों का उपयोग करने पर विचार करें।अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3