সি/সি++ প্রোগ্রামিং টিউটোরিয়াল (পর্ব ৭) স্ট্রাকচার ও ফাংশন

0
248

স্ট্রাকচার ও ফাংশন

ফাংশনের প্যারামিটার, রিটার্ন ডাটা টাইপ কিংবা লোকাল ভেরিয়েবল ইত্যাদি বিভিন্ন প্রয়োজনে স্ট্রাকচার ব্যবহার করা যেতে পারে। ফাংশনের প্যারামিটার হিসেবে সম্পূর্ণ স্ট্রাকচারকে বা নির্দিষ্ট কোনো মেম্বারকে কিংবা স্ট্রাকচারের অ্যাড্রেসকেও পাঠানো যায়।

প্যারামিটার হিসেবে স্ট্রাকচার ভেরিয়েবল

প্যারামিটার হিসেবে স্ট্রাকচার ভেরিয়েবল ব্যবহার করতে নিচের মতো করে ডেফিনিশন লিখতে হবে :
return_type function_name (struct tag variable_name) {….}
এবং ফাংশনকে এভাবে কল করতে হবে :
function_name(tag type variable_name);

উদাহরণ হিসেবে ছোট একটি প্রোগ্রাম দেয়া যায় :
struct person
{
char* name;
int age;
}
showPersonInfo(struct person p1)
{….}
struct person iqbal;
showPersonInfo(iqbal);

এখানে প্রথমে একটি স্ট্রাকচার ডিফাইন করা হয়েছে। এরপর একটি ফাংশনের ডেফিনিশন লেখা হয়েছে। এরপর ওই স্ট্রাকচারের ইকবাল নামে একটি ভেরিয়েবল তৈরি করে পরের লাইনে ইকবাল ভেরিয়েবলটিকে প্যারামিটার হিসেবে ওই ফাংশনে পাঠিয়ে দেয়া হয়েছে।

প্যারামিটার হিসেবে স্ট্রাকচার পয়েন্টার

এটিও আগের মতো অনেকটা একইভাবে লিখতে হয়। শুধু পার্থক্য হলো, ফাংশন ডেফিনিশন লেখার সময় প্যারামিটারের জায়গায় স্ট্রাকচার টাইপের পরে একটি অ্যাস্টেরিক সাইন (*) দিতে হয়। আর ফাংশনকে কল করার সময় প্যারামিটার হিসেবে অ্যাড্রেস পাঠানোর জন্য অপারেটর ব্যবহার করতে হয়। যেমন :
showPersonInfo(struct person* p1)
{….}
showPersonInfo(&iqbal;);

এভাবে ব্যবহারকারী নিজের ইচ্ছেমতো ফাংশনের প্যারামিটার হিসেবে স্ট্রাকচার ব্যবহার করতে পারবেন। শুধু তাই নয়, ইচ্ছে করলে স্ট্রাকচারকেও রিটার্ন ভ্যালু হিসেবে ব্যবহার করা যাবে। এ রিটার্নের সময় ব্যবহারকারী চাইলে স্ট্রাকচার পয়েন্টার অথবা সাধারণ স্ট্রাকচার ভেরিয়েবল দুটোই রিটার্ন করতে পারেন।

বিভিন্ন ধরনের কাস্টম ডাটা টাইপের মাঝে স্ট্রাকচারের ব্যবহারই সবচেয়ে বেশি লক্ষ করা যায়। স্ট্রাকচারের ব্যবহার সি ল্যাঙ্গুয়েজের একটি অন্যতম ফিচার। এটি ব্যবহারের মাধ্যমে ব্যবহারকারীর কোড করা অনেক সহজ হয়ে যায়। সাথে প্রোগ্রামের গুণগত মানও অনেক বাড়ে। এছাড়া বড় ধরনের প্রোগ্রাম লেখার সময় এমন অনেক পরিস্থিতির সৃষ্টি হতে পারে, যেখানে স্ট্রাকচার অথবা অন্যান্য কাস্টম ডাটা ব্যবহার না করে কোনো উপায় নেই। তাই স্ট্রাকচারের ব্যবহার ভালোভাবে জানা একজন প্রোগ্রামারের জন্য জরুরি ।

একটি উত্তর ত্যাগ