Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

C++ में उपसर्ग और पोस्टफिक्स ऑपरेटरों के बीच क्या अंतर है?


उपसर्ग संस्करण (यानी, ++i) में, i का मान बढ़ा हुआ है, और व्यंजक का मान i का नया मान है। तो मूल रूप से यह पहले इंक्रीमेंट करता है और फिर एक्सप्रेशन को एक मान प्रदान करता है।

पोस्टफिक्स संस्करण (यानी, i++) में, i का मान बढ़ा हुआ है, हालांकि, व्यंजक का {value|the value} यह है कि i का मूल मान है। तो मूल रूप से यह पहले अभिव्यक्ति के लिए एक मान निर्दिष्ट करता है और फिर चर को बढ़ाता है।

आइए बेहतर समझ पाने के लिए कुछ कोड देखें -

उदाहरण

#include<iostream>
using namespace std;

int main() {
   int x = 3, y, z;
   y = x++;
   z = ++x;
   cout << x << ", " << y << ", " << z;
   return 0;
}

आउटपुट

यह हमें आउटपुट देगा -

5, 3, 5

ऐसा क्यों है? आइए इसे विस्तार से देखें -

  • x से 3 प्रारंभ करें
  • x++ एक्सप्रेशन का मूल्यांकन करके हमें जो मान मिलता है, उसे y असाइन करें, यानी, वेतन वृद्धि से पहले x का मान और फिर x बढ़ाएँ।
  • इन्क्रीमेंट x फिर z को एक्सप्रेशन ++x, यानी, इंक्रीमेंट के बाद x के मान का मूल्यांकन करके हमें जो मान मिलता है, उसे असाइन करें।
  • इन मानों को प्रिंट करें

  1. सी # में उपसर्ग और पोस्टफिक्स ऑपरेटरों के बीच अंतर?

    उपसर्ग ऑपरेटर वेतन वृद्धि ऑपरेटर ++ यदि एक चर पर उपसर्ग के रूप में उपयोग किया जाता है, तो चर का मान 1 से बढ़ जाता है। उसके बाद मान पोस्टफिक्स ऑपरेटर के विपरीत वापस आ जाता है। इसे प्रीफिक्स इंक्रीमेंट ऑपरेटर कहा जाता है। ठीक उसी तरह प्रीफ़िक्स डिक्रीमेंट ऑपरेटर काम करता है लेकिन यह 1 से कम हो जाता ह

  1. पायथन में !=और <> ऑपरेटरों के बीच क्या अंतर है?

    पायथन 2.x में, दोनों !=और <> ऑपरेटर यह जांचने के लिए उपलब्ध हैं कि क्या दो ऑपरेंड बराबर नहीं हैं। यदि ऑपरेंड समान नहीं हैं तो दोनों सत्य लौटते हैं और यदि वे समान हैं तो झूठे हैं। पायथन 3.x में, <> ऑपरेटर को पदावनत कर दिया गया है।

  1. पायथन में =और ==ऑपरेटरों के बीच क्या अंतर है?

    पायथन में =प्रतीक को असाइनमेंट . के रूप में परिभाषित किया गया है ऑपरेटर। इसके बाईं ओर एक चर और इसके दाईं ओर एक अभिव्यक्ति की आवश्यकता होती है। दाईं ओर के व्यंजक का मान बाईं ओर के चर को सौंपा गया है। चर के व्यंजक और नाम विनिमेय नहीं हैं। >>> a=10 >>> b=20 >>> c=a+b >>