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

C++ में *ptr++, *++ptr और ++*ptr की तुलना

इस खंड में, हम देखेंगे कि C++ में *ptr++, *++ptr और ++*ptr के बीच क्या अंतर हैं।

यहां हम C या C++ में पोस्टफिक्स++ और प्रीफिक्स++ की प्राथमिकता देखेंगे। प्रीफिक्स ++ या -- की प्राथमिकता डीरेफरेंस ऑपरेटर '*' से अधिक होती है और पोस्टफिक्स ++ या -- की प्राथमिकता प्रीफिक्स ++ और डीरेफरेंस ऑपरेटर '*' दोनों से अधिक होती है।

जब ptr एक पॉइंटर है, तो *ptr++ का अर्थ *(ptr++) होता है और ++*ptr का अर्थ ++(*ptr) होता है।

उदाहरण कोड 1

#include<iostream>
using namespace std;

int main() {
    char arr[] = "Hello World";
    char *ptr = arr;
    ++*ptr;
    cout << *ptr;
    return 0;
}

आउटपुट

I

तो यहां सबसे पहले ptr 'H' की ओर इशारा कर रहा है। ++*ptr का उपयोग करने के बाद यह H को 1 से बढ़ाता है, और अब मान 'I' है।

उदाहरण कोड 2

#include<iostream>
using namespace std;

int main() {
    char arr[] = "Hello World";
    char *ptr = arr;
    *ptr++;
    cout << *ptr;
    return 0;
}

आउटपुट

e

तो यहां सबसे पहले ptr 'H' की ओर इशारा कर रहा है। *ptr++ का उपयोग करने के बाद यह पॉइंटर को बढ़ाता है, इसलिए ptr अगले एलिमेंट की ओर इशारा करेगा। इसलिए परिणाम 'e' है।

उदाहरण कोड 3

#include<iostream>
using namespace std;

int main() {
    char arr[] = "Hello World";
    char *ptr = arr;
    *++ptr;
    cout << *ptr;
    return 0;
}

आउटपुट

e

इस उदाहरण में भी हम ++ का उपयोग करके ptr को बढ़ा रहे हैं, जहां प्री-इंक्रीमेंट ++ की प्राथमिकता अधिक है, फिर यह पहले पॉइंटर को बढ़ाता है, फिर * का उपयोग करके मान लेता है। इसलिए यह 'e' प्रिंट कर रहा है।

  1. C++ का उपयोग करके फुटबॉल पर पेंटागन और हेक्सागन की संख्या ज्ञात करें C++ का उपयोग करके फुटबॉल पर पेंटागन और हेक्सागन की संख्या ज्ञात करें

    जैसा कि हम सभी जानते हैं, पेंटागन और हेक्सागन फुटबॉल के समान रूप से आवश्यक भाग हैं। ये आकृतियाँ एक पहेली की तरह एक साथ फिट होती हैं ताकि एक पूरी तरह से गोलाकार आकार बनाया जा सके। तो यहाँ हमारे पास एक फुटबॉल है, जिसमें हमें हेक्सागन और पेंटागन ढूंढने हैं।हम समस्या को आसानी से हल करने के लिए यूलर विशे

  1. - C++ में % ऑपरेटर के बिना 3 और 5 के गुणज

    हम % ऑपरेटर का उपयोग करके बिना किसी बाधा के गुणज ढूंढ सकते हैं। लेकिन, समस्या बताती है कि हम % ऑपरेटर का उपयोग नहीं कर सकते। यहां, हम + ऑपरेटर का उपयोग करते हैं। हम पिछले गुणज में 3 या 5 जोड़कर गुणज प्राप्त कर सकते हैं। आइए एक उदाहरण देखते हैं। इनपुट 15 आउटपुट 1 2 3 - Multiple of 3 4 5 - Multiple

  1. OpenCV में C++ का उपयोग करके इमेज कैसे लोड करें और दिखाएं? OpenCV में C++ का उपयोग करके इमेज कैसे लोड करें और दिखाएं?

    इस विषय में, हम निर्धारित करेंगे कि C++ में OpenCV का उपयोग करके इमेज कैसे लोड करें और दिखाएं। OpenCV में इमेज लोड करने और दिखाने के लिए निम्नलिखित फ़ंक्शन आवश्यक हैं। Mat: Mat कोई फ़ंक्शन नहीं है। यह एक डेटा संरचना है, एक प्रकार का वेरिएबल। C++ में int, char, string वेरिएबल प्रकारों की तरह, Mat Op