কম্পিউটার

সি ল্যাঙ্গুয়েজে কিভাবে পয়েন্টার টু স্ট্রাকচার অ্যাক্সেস করবেন?


কাঠামোর নির্দেশক একটি সম্পূর্ণ কাঠামোর ঠিকানা ধারণ করে।

প্রধানত, এগুলি জটিল ডেটা স্ট্রাকচার তৈরি করতে ব্যবহৃত হয় যেমন লিঙ্ক করা তালিকা, গাছ, গ্রাফ ইত্যাদি।

তীর অপারেটর ( ->) নামে একটি বিশেষ অপারেটর ব্যবহার করে কাঠামোর সদস্যদের অ্যাক্সেস করা যেতে পারে।

ঘোষণা

নিম্নোক্ত কাঠামোর জন্য নির্দেশকের ঘোষণা −

struct tagname *ptr;

উদাহরণস্বরূপ, struct student *s;

অ্যাক্সেস করা হচ্ছে

আপনি নিম্নলিখিত −

ব্যবহার করে কাঠামোতে পয়েন্টার অ্যাক্সেস করতে পারেন
Ptr-> membername;

যেমন, s->sno, s->sname, s->marks;

উদাহরণ

-এ পয়েন্টার অ্যাক্সেস করার জন্য সি প্রোগ্রামটি নিচে দেওয়া হল
#include<stdio.h>
struct classroom{
   int students[7];
};
int main(){
   struct classroom clr = {2, 3, 5, 7, 11, 13};
   int *ptr;
   ptr = (int *)&clr;
   printf("%d",*(ptr + 4));
   return 0;
}

আউটপুট

যখন উপরের প্রোগ্রামটি কার্যকর করা হয়, তখন এটি নিম্নলিখিত ফলাফল তৈরি করে -

11

ব্যাখ্যা

এখানে, একটি পয়েন্টার ভেরিয়েবল ptr একটি অবজেক্ট clr এর প্রথম মানের 2 এর ঠিকানা ধারণ করে। তারপর, পয়েন্টার ভেরিয়েবলের ঠিকানা 4 দ্বারা বৃদ্ধি করা হয় এবং অবশেষে, মান প্রদর্শিত হয়।

উদাহরণস্বরূপ,

*(ptr + 0) = 2
*(ptr + 1) = 3
*(ptr + 2) = 5
*(ptr + 3) = 7
*(ptr + 4) = 11
*(ptr + 5) = 13

পয়েন্টার টু স্ট্রাকচার সম্পর্কে জানতে আরেকটি সহজ উদাহরণ বিবেচনা করুন −

উদাহরণ

struct student{
   int sno;
   char sname[30];
   float marks;
};
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 ("details of the student are\n");
   printf ("Number = %d\n", st ->sno);
   printf ("name = %s\n", st->sname);
   printf ("marks =%f", st->marks);
   getch ( );
}

আউটপুট

যখন উপরের প্রোগ্রামটি কার্যকর করা হয়, তখন এটি নিম্নলিখিত ফলাফল তৈরি করে -

enter sno, sname, marks :1 bhanu 69
details of the student are
Number = 1
name = bhanu
marks =69.000000

  1. উইন্ডোজ 10-এ সিস্টেমের ভাষা কীভাবে পরিবর্তন করবেন

  2. Windows 10 এ সিস্টেমের ভাষা কীভাবে পরিবর্তন করবেন

  3. Windows 11 এ কীভাবে সিস্টেমের ভাষা পরিবর্তন করবেন

  4. Windows 7 এ কিভাবে ডিসপ্লে ভাষা পরিবর্তন করবেন