सी में अनंत आउटपुट लूप
प्रदान किए गए सी कोड में, एक अप्रत्याशित अंतहीन लूप होता है, जो संख्याओं की एक सतत श्रृंखला को प्रिंट करता है ("0 अपेक्षित "0, 1, 2, 3" के बजाय , 1, 2, 3, 4, 5, ...")। = mc[di]" लूप के भीतर। यह असाइनमेंट अपरिभाषित व्यवहार को ट्रिगर करता है क्योंकि यह अंतिम पुनरावृत्ति (यानी, "di = 4") पर सीमा से बाहर एमसी सरणी तक पहुंचता है।
आक्रामक लूप अनुकूलन के तहत, कंपाइलर अपरिभाषित व्यवहार की अनुपस्थिति मान सकता है। परिणामस्वरूप, यह di
सही व्यवहार सुनिश्चित करने के लिए, अनुकूलित कोड के भीतर भी, अपरिभाषित व्यवहार से बचना महत्वपूर्ण है। इस मामले में, समाधान यह सुनिश्चित करना है कि एमसी को लूप के भीतर सीमाओं के भीतर एक्सेस किया जाए।
एक वैकल्पिक दृष्टिकोण आक्रामक लूप ऑप्टिमाइज़ेशन को अक्षम करने के लिए जीसीसी में -fno-आक्रामक-लूप-ऑप्टिमाइज़ेशन ध्वज का उपयोग करना है। यह ध्वज संकलक को di
अपरिभाषित व्यवहार के संभावित परिणामों को समझकर और इससे बचने के लिए उचित उपाय करके, प्रोग्रामर यह सुनिश्चित कर सकते हैं कि उनके सी कोड की विश्वसनीयता और शुद्धता।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3