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

C में पॉइंटर्स का उपयोग करके अंकगणितीय ऑपरेशन्स

पॉइंटर घोषणा, आरंभीकरण और एक्सेस

int qty = 179;
int *p;
p = &qty; // p अब qty का एड्रेस रखता है

पॉइंटर्स के साथ अंकगणितीय ऑपरेशन्स

यदि पॉइंटर्स उचित रूप से घोषित और आरंभीकृत हैं, तो निम्न वैध हैं:

वैध ऑपरेशन्स

  • *p1 + *p2, *p1 - *p2, *p1 * *p2, *p1 / *p2 (वैल्यूज पर ऑपरेशन)
  • p1 + 4, p2 - 2 (पॉइंटर अंकगणित: एलिमेंट्स आगे/पीछे)
  • p1 - p2 (दोनों समान ऐरे को पॉइंट करें तो बीच के एलिमेंट्स की संख्या)
  • p1++, --p2 (इन्क्रीमेंट/डिक्रीमेंट)
  • sum += *p2 (वैल्यू जोड़ना)
  • p1 > p2, p1 == p2, p1 != p2 (तुलना: समान ऐरे में पोजीशन)

अमान्य ऑपरेशन्स

  • p1 + p2 (दो एड्रेस जोड़ने का कोई अर्थ नहीं)
  • p1 * p2, p1 / p2, p1 / 3

प्रोग्राम उदाहरण

#include <stdio.h>

int main() {
    int a = 12, b = 4;
    int *p1 = &a, *p2 = &b;
    int x, y;

    x = *p1 * *p2 - 6;      // 12 * 4 - 6 = 42
    y = 4 - *p2 / *p1 + 10; // 4 - 4/12 + 10 = 14 (इंटीजर डिवीजन)

    printf("Address of a = %p\n", (void*)p1);
    printf("Address of b = %p\n", (void*)p2);
    printf("a = %d, b = %d\n", a, b);
    printf("x = %d, y = %d\n", x, y);
    return 0;
}

आउटपुट

Address of a = 0x7ffe...
Address of b = 0x7ffe...
a = 12, b = 4
x = 42, y = 14

व्याख्या

  • *p1 है 12, *p2 है 4।
  • x = 12 * 4 - 6 = 48 - 6 = 42
  • y = 4 - 4/12 + 10 = 4 - 0 + 10 = 14 (इंटीजर डिवीजन: 4/12 = 0)

सावधानियां

  • पॉइंटर्स को उपयोग से पहले आरंभीकृत करें।
  • डीरेफरेंस करने से पहले NULL चेक करें।
  • पॉइंटर अंकगणित केवल समान ऐरे के भीतर वैध है।
  1. C भाषा में संरचना अवधारणा का उपयोग करके बिट फ़ील्ड की व्याख्या C भाषा में संरचना अवधारणा का उपयोग करके बिट फ़ील्ड की व्याख्या

    बिट फ़ील्ड का उपयोग वेरिएबल के आकार को बिट्स के संदर्भ में निर्दिष्ट करने के लिए किया जाता है। आमतौर पर, इसे एक संरचना के अंदर परिभाषित किया जाता है। बिट फ़ील्ड: 1 बाइट = 8 बिट्स उदाहरण के लिए, नीचे एक उदाहरण समझाया गया है: Struct info{ int x:2; }; यहां, x 2 बिट्स पर कब्जा करता है। बिट फ़ील

  1. Python में OpenCV का उपयोग करके छवियों पर अंकगणितीय संक्रियाएं Python में OpenCV का उपयोग करके छवियों पर अंकगणितीय संक्रियाएं

    इस ट्यूटोरियल में, हम OpenCV का उपयोग करके छवियों पर अंकगणितीय संक्रियाओं के बारे में सीखेंगे। हम जोड़, घटाव, बिटवाइज़ ऑपरेशन जैसे संक्रियाएं लागू कर सकते हैं। आइए देखें कि हम छवियों पर संक्रियाएं कैसे कर सकते हैं।छवियों पर संक्रियाएं करने के लिए हमें OpenCV मॉड्यूल की आवश्यकता होती है। टर्मिनल या क

  1. Python में OpenCV का उपयोग करके अंकगणितीय संक्रियाएं Python में OpenCV का उपयोग करके अंकगणितीय संक्रियाएं

    इस ट्यूटोरियल में, हम Python में OpenCV का उपयोग करके छवियों पर अंकगणितीय संक्रियाएं करेंगे। हमें OpenCV मॉड्यूल इंस्टॉल करना होगा।OpenCV मॉड्यूल इंस्टॉल करने के लिए निम्न कमांड चलाएं।pip install opencv-python==4.1.1.26यदि आप उपरोक्त कमांड चलाते हैं, तो आपको निम्न सफल संदेश मिलेगा।=1.14.5 in c:\user