কম্পিউটার

পয়েন্টার ব্যবহার করে একটি অ্যারের উপাদান অ্যাক্সেস করার জন্য C++ প্রোগ্রাম


পয়েন্টারগুলি ভেরিয়েবলের মেমরি অবস্থান বা ঠিকানা সংরক্ষণ করে। অন্য কথায়, পয়েন্টার একটি মেমরি অবস্থান উল্লেখ করে এবং সেই মেমরি অবস্থানে সঞ্চিত মান প্রাপ্ত করাকে পয়েন্টার ডিরেফারেন্সিং বলা হয়।

একটি প্রোগ্রাম যা একটি অ্যারের একটি একক উপাদান অ্যাক্সেস করতে পয়েন্টার ব্যবহার করে নিম্নরূপ দেওয়া হয় -

উদাহরণ

#include <iostream>
using namespace std;
int main() {
   int arr[5] = {5, 2, 9, 4, 1};
   int *ptr = &arr[2];
   cout<<"The value in the second index of the array is: "<< *ptr;
   return 0;
}

আউটপুট

The value in the second index of the array is: 9

উপরের প্রোগ্রামে, পয়েন্টার ptr অ্যারের তৃতীয় সূচকে উপাদানটির ঠিকানা সংরক্ষণ করে অর্থাৎ 9।

এটি নিম্নলিখিত কোড স্নিপেটে দেখানো হয়েছে৷

int *ptr = &arr[2];

পয়েন্টারটিকে ডিরেফারেন্স করা হয় এবং ইনডাইরেকশন (*) অপারেটর ব্যবহার করে মান 9 প্রদর্শিত হয়। এটি নিম্নরূপ প্রদর্শিত হয়৷

cout<<"The value in the second index of the array is: "<< *ptr;

আরেকটি প্রোগ্রাম যেখানে অ্যারের সমস্ত উপাদান অ্যাক্সেস করতে একটি একক পয়েন্টার ব্যবহার করা হয় তা নিম্নরূপ দেওয়া হয়েছে৷

উদাহরণ

#include <iostream>
using namespace std;
int main() {
   int arr[5] = {1, 2, 3, 4, 5};
   int *ptr = &arr[0];
   cout<<"The values in the array are: ";
   for(int i = 0; i < 5; i++) {
      cout<< *ptr <<" ";
      ptr++;
   }
   return 0;
}

আউটপুট

The values in the array are: 1 2 3 4 5

উপরের প্রোগ্রামে, পয়েন্টার ptr অ্যারের প্রথম উপাদানটির ঠিকানা সংরক্ষণ করে। এটি নিম্নরূপ করা হয়।

int *ptr = &arr[0];

এর পরে, পয়েন্টার ডিরেফারেন্স করতে এবং অ্যারের সমস্ত উপাদান প্রিন্ট করতে a for লুপ ব্যবহার করা হয়। পয়েন্টারটি লুপের প্রতিটি পুনরাবৃত্তিতে বৃদ্ধি পায় অর্থাৎ প্রতিটি লুপের পুনরাবৃত্তিতে পয়েন্টারটি অ্যারের পরবর্তী উপাদানের দিকে নির্দেশ করে। তারপর যে অ্যারে মান মুদ্রিত হয়. এটি নিম্নলিখিত কোড স্নিপেটে দেখা যেতে পারে।

for(int i = 0; i < 5; i++) {
   cout<< *ptr <<" ";
   ptr++;
}

  1. অ্যারের উপাদানগুলির গুণনের জন্য C++ প্রোগ্রাম

  2. হিপ সর্ট অ্যালগরিদম ব্যবহার করে 10টি উপাদানের একটি অ্যারে সাজানোর জন্য C++ প্রোগ্রাম

  3. কিভাবে C# এ পয়েন্টার নোটেশন ব্যবহার করে একটি অ্যারের উপাদান অ্যাক্সেস করবেন?

  4. C# এ একটি পয়েন্টার ব্যবহার করে অ্যারে উপাদানগুলি কীভাবে অ্যাক্সেস করবেন?