निम्न कोड स्निपेट:
int i = -3, j = 2, k = 0, मी; मी = ++ मैं & amp; amp; ++ ज || ++ k; को दो अवधारणाओं का उपयोग करके मूल्यांकन किया जा सकता है, मुझे विश्वास है: <+ p>
1. चूंकि ++ ऑपरेटर तार्किक ऑपरेटरों की तुलना में अधिक प्राथमिकता रखते हैं, इसलिए पहले सभी वेतन वृद्धि ऑपरेटर उत्तीर्ण किए जाएंगे , तब & amp; amp; से अधिक प्राथमिकता || गणना की जाएगी। इस प्रक्रिया में, कश्मीर बढ़ जाएगा।
2. प्रथम और amp; ऑपरेटर का मूल्यांकन किया जाएगा। इस ++ i और ++ जे के लिए गणना की जाएगी। परिणामस्वरूप & amp; amp; ऑपरेटर 1 है, ++ k का मूल्यांकन करने की कोई ज़रूरत नहीं है। इसलिए कश्मीर में वृद्धि नहीं की जाएगी।
जब मैं एक सिस्टम पर कोशिश करता हूं, परिणाम तर्क देता है कि 2 सही होगा और 1 गलत होगा। ऐसा क्यों है?
ओली सही है ... आप मूल्यांकन क्रम के साथ भ्रम की स्थिति में भ्रमित हैं
प्राथमिकता का अर्थ है कि अभिव्यक्ति की व्याख्या निम्नानुसार है:
m = ((((++ i) & amp; amp; amp; (++ j)) || (+ + के)); के विपरीत, कहते हैं:
m = (++ (i & amp; ++ (j || ( ++ कश्मीर))) प्राथमिकता इस तथ्य को नहीं बदलेगी कि = ऑपरेटर का एलएचएस हमेशा आरएचएस से पहले मूल्यांकन किया जाएगा।
No comments:
Post a Comment