Friday 15 June 2012

c - Difference between "int i=1,2,3" and "int i=(1,2,3)" - variable declaration with comma operator -


इस सवाल का पहले से ही एक उत्तर है: < / P>

  • 1 उत्तर
    1. int i = 1,2,3;

    2. int i = (1,2,3);

    3. int i; I = 1,2,3;

      इन बयानों में क्या अंतर है? मैं इसके लिए किसी विशेष कारण से नहीं मिल सकता।

        विवरण 1 परिणाम: त्रुटि संकलित करें ।   

      'ऑपरेटर' की तुलना में '=' ​​ऑपरेटर की उच्च प्राथमिकता है। अल्पविराम एक विभाजक के रूप में यहां कार्य करता है। कंपाइलर एक पूर्णांक चर 'i' बनाता है और '1' के साथ आरंभ करता है '2' के रूप में पूर्णांक चर '2' बनाने के लिए कंपाइलर एक मान्य इंडेंटिफ़ायर नहीं है।


        स्टेटमेंट 2 परिणाम: i = 3   

      '()' ऑपरेटर में '=' ​​से अधिक प्राथमिकता है। तो, सबसे पहले, ब्रैकेट ऑपरेटर का मूल्यांकन किया जाता है। '()' ऑपरेटर को बाएं से दाएं से संचालित किया जाता है लेकिन यह हमेशा अंतिम का परिणाम है जो सौंपा जाता है।


        विवरण 3: परिणाम: i = 1   

      '=' ऑपरेटर अधिक है ',' ऑपरेटर से प्राथमिकता इसलिए 'आई' को '1' से आरम्भ किया जाता है '2' और '3' सिर्फ निरंतर अभिव्यक्ति है इसलिए कोई प्रभाव नहीं है।

No comments:

Post a Comment