পর্ব ১৩: সি তে পয়েন্টার | Pointer in C

🎯 এই পর্বে যা জানবে:

  • পয়েন্টার কী
  • পয়েন্টার কেন ব্যবহার করা হয়
  • পয়েন্টারের ঘোষণা, ইনিশিয়ালাইজেশন ও ব্যবহার
  • অ্যাড্রেস অপারেটর (&) ও ডেরেফারেন্স অপারেটর (*)
  • পয়েন্টার ও অ্যারের সম্পর্ক
  • ফাংশনে পয়েন্টারের ব্যবহার

🧩 পয়েন্টার কী?

পয়েন্টার (Pointer) হলো এমন একটি ভেরিয়েবল যা অন্য ভেরিয়েবলের মেমোরি অ্যাড্রেস (address) সংরক্ষণ করে।
অর্থাৎ, এটি মূল মানটি না রেখে মানটি যেখানে রাখা হয়েছে সেই ঠিকানা ধরে রাখে।

👉 সহজভাবে বললে —

পয়েন্টার হলো ভেরিয়েবলের ঠিকানার ধারক।


💡 উদাহরণ:

আউটপুট:


⚙️ পয়েন্টার ঘোষণা ও ইনিশিয়ালাইজেশন

উদাহরণ:

এরপর ভেরিয়েবলের ঠিকানা দিয়ে ইনিশিয়ালাইজ করা হয় 👇


🧭 গুরুত্বপূর্ণ অপারেটর

🔹 Address-of Operator (&)

কোনো ভেরিয়েবলের মেমোরি ঠিকানা বের করতে & ব্যবহার করা হয়।
👉 উদাহরণ: &x

🔹 Dereference Operator (*)

পয়েন্টারের মাধ্যমে ভেরিয়েবলের মান বের করতে * ব্যবহার করা হয়।
👉 উদাহরণ: *p


🧮 পয়েন্টার ও অ্যারে

অ্যারে ও পয়েন্টার একে অপরের সাথে গভীরভাবে সম্পর্কিত।
অ্যারের নাম নিজেই প্রথম উপাদানের ঠিকানাকে নির্দেশ করে।


🔁 পয়েন্টার টু পয়েন্টার

একটি পয়েন্টারের ঠিকানাকে অন্য একটি পয়েন্টারে সংরক্ষণ করা যায়।
একে বলে Pointer to Pointer

আউটপুট:


🔄 ফাংশনে পয়েন্টারের ব্যবহার

পয়েন্টারের মাধ্যমে call by reference করা যায়, অর্থাৎ ফাংশনের ভিতরে মান পরিবর্তন করলে মূল ভেরিয়েবলেও পরিবর্তন হয়।

💡 উদাহরণ:

আউটপুট:


🧠 পয়েন্টার ব্যবহারের সুবিধা

✅ ফাংশনে মান পরিবর্তন সহজ
✅ অ্যারে ও স্ট্রিং প্রক্রিয়াকরণে কার্যকর
✅ মেমোরি দক্ষতা বৃদ্ধি করে
✅ ডাইনামিক মেমোরি ব্যবস্থাপনায় অপরিহার্য


⚠️ সতর্কতা

❌ পয়েন্টার ঘোষণা করে ইনিশিয়ালাইজ না করলে এটি garbage value ধারণ করে
❌ ভুলভাবে ব্যবহার করলে Segmentation fault হতে পারে
✅ সবসময় সঠিক মেমোরি অ্যাড্রেস দিয়ে কাজ করা উচিত


✨ সংক্ষেপে

  • পয়েন্টার অন্য ভেরিয়েবলের ঠিকানা ধরে রাখে
  • & দিয়ে ঠিকানা পাওয়া যায়, * দিয়ে মান অ্যাক্সেস করা যায়
  • অ্যারে ও ফাংশনে পয়েন্টার খুবই গুরুত্বপূর্ণ
  • call by reference করতে পয়েন্টার ব্যবহার করা হয়
  • Pointer-to-pointer আরও গভীর অ্যাক্সেস দেয়

পর্ব ১৩: সি তে পয়েন্টার | Pointer in C

C প্রোগ্রামিং টিউটোরিয়াল (৩০ পর্বে)