"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > क्या `int x = x;` अपरिभाषित व्यवहार lvalue-to-rvalue रूपांतरण के कारण है?

क्या `int x = x;` अपरिभाषित व्यवहार lvalue-to-rvalue रूपांतरण के कारण है?

2025-03-22 पर पोस्ट किया गया
ब्राउज़ करें:578

] मानक (3.3.2) यह घोषणा करता है कि उदाहरण में एक चर को स्वयं के साथ इनिशियलाइज़ करना, उदाहरण में int x = x;, अप्रत्याशित परिणामों को जन्म दे सकता है। मान लीजिए कि दाहिने हाथ का एक्स एक अनिश्चित स्वचालित चर है जिसमें एक अनिश्चित मूल्य है। मानक (4.1) के अनुसार, अपरिभाषित व्यवहार में इस तरह के एक मूल्य परिणाम पर एक lvalue-to-rvalue रूपांतरण का प्रदर्शन करना। उदाहरण के लिए, मानक नोट जो बिल्ट-इन असाइनमेंट ऑपरेटरों को सही ऑपरेंड के लिए lvalue-to-rvalue रूपांतरण में प्रवेश करते हैं। अन्य प्रावधानों से यह भी संकेत मिलता है कि Lvalue-to-rvalue रूपांतरण को आम तौर पर स्पष्ट रूप से निर्दिष्ट होने पर छोड़कर प्रत्याशित किया जाता है। साक्ष्य से पता चलता है कि इच्छित विनिर्देश जहां भी मान की आवश्यकता होती है, वहां prvalues ​​की अपेक्षा करना है। व्यवहार। असंगत व्यवहार, जैसे कि संदर्भ इनिशियलाइज़ेशन पर lvalue-to-rvalue रूपांतरण को रोकना, लेकिन ऑब्जेक्ट इनिशियलाइज़ेशन पर इसे अनुमति देना, यह देखने के लिए विश्वसनीयता जोड़ता है कि lvalue-to-rvalue रूपांतरण को कॉपी-इनिशियलाइज़ेशन के लिए अपेक्षित किया जाता है। lvalue-to-rvalue रूपांतरण। यह int x = x; यह, बदले में, दाहिने हाथ के x की uninitialized प्रकृति के कारण अपरिभाषित व्यवहार की ओर जाता है। मानक की असंगतताएं और स्पष्टीकरण की आवश्यकता मूल्य श्रेणियों के लिए विस्तृत विनिर्देशों के महत्व को उजागर करती है।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3