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

C में पॉइंटर टू स्ट्रक्चर: अवधारणा और उदाहरण

पॉइंटर टू स्ट्रक्चर क्या है?

पॉइंटर टू स्ट्रक्चर पूरे स्ट्रक्चर का एड्रेस रखता है। इसका उपयोग लिंक्ड लिस्ट, ट्री, ग्राफ जैसे जटिल डेटा स्ट्रक्चर बनाने में होता है।

मेंबर्स को एक्सेस करने के लिए एरो ऑपरेटर (->) उपयोग होता है।

घोषणा

struct tagname *ptr;

उदाहरण: struct student *s;

एक्सेस करना

ptr->membername;

उदाहरण: s->sno, s->sname, s->marks

पूर्ण प्रोग्राम

#include <stdio.h>

struct student {
    int sno;
    char sname[30];
    float marks;
};

int main() {
    struct student s;
    struct student *st;
    printf("Enter sno, sname, marks: ");
    scanf("%d %s %f", &s.sno, s.sname, &s.marks);
    st = &s;
    printf("Student details:\n");
    printf("Number = %d\n", st->sno);
    printf("Name = %s\n", st->sname);
    printf("Marks = %f\n", st->marks);
    return 0;
}

आउटपुट

Enter sno, sname, marks: 1 priya 34
Student details:
Number = 1
Name = priya
Marks = 34.000000

मुख्य बिंदु

  • st = &s से पॉइंटर को स्ट्रक्चर का एड्रेस मिलता है।
  • st->member बराबर है (*st).member के।
  • डायनामिक मेमोरी एलोकेशन (malloc) के साथ पॉइंटर टू स्ट्रक्चर का उपयोग लिंक्ड लिस्ट आदि के लिए होता है।
  1. C भाषा में कैरेक्टर ऑपरेशन्स को समझें C भाषा में कैरेक्टर ऑपरेशन्स को समझें

    C प्रोग्रामिंग भाषा में कैरेक्टर (A-Z या a-z), अंक (0-9), व्हाइट स्पेस, या विशेष प्रतीक हो सकते हैं। घोषणा (Declaration) C प्रोग्रामिंग में कैरेक्टर ऑपरेशन्स के लिए घोषणा निम्नलिखित है: char a = A; // कैरेक्टर कॉन्स्टेंट का उपयोग करके कैरेक्टर इनपुट/आउटपुट फंक्शन्स कैरेक्टर इनपुट/आउटपुट फंक्शन्स

  1. C भाषा में यूनियन टू पॉइंटर (Union to Pointer) C भाषा में यूनियन टू पॉइंटर (Union to Pointer)

    यूनियन (Union) क्या है? यूनियन एक यूजर-डिफाइंड डेटा प्रकार है जो एक ही मेमोरी स्थान को विभिन्न डेटा प्रकारों के सदस्यों के लिए साझा करने की अनुमति देता है। किसी भी समय केवल एक सदस्य ही मान रख सकता है। यूनियन की घोषणा union यूनियन_नाम { डेटा_प्रकार सदस्य1; डेटा_प्रकार सदस्य2; // ... };

  1. C भाषा में पॉइंटर एक्सेस करने की अवधारणा C भाषा में पॉइंटर एक्सेस करने की अवधारणा

    पॉइंटर घोषणा, प्रारंभिकरण और एक्सेस 1. सामान्य चर int qty = 179; // मेमोरी में: पता 1000 पर मान 179 संग्रहीत 2. पॉइंटर घोषणा int *p; // p एक पॉइंटर चर है जो int का पता रख सकता है 3. पॉइंटर प्रारंभिकरण int qty = 175; int *p; p = &qty; // एड्रेस-ऑफ ऑपरेटर (&) से पता प्राप्त करें मेमोरी आर