সি/সি++ প্রোগ্রামিং টিউটোরিয়াল (পর্ব ৫) স্ট্রাকচার ভেরিয়েবলের অ্যারে

By | 27/06/2015

স্ট্রাকচার ভেরিয়েবলের অ্যারে

সি-তে একসাথে অনেকগুলো স্ট্রাকচার ভেরিয়েবল ব্যবহার করার সুযোগ রয়েছে। তাই প্রোগ্রামে যেকোনো ভেরিয়েবলের মতো স্ট্রাকচার ভেরিয়েবলেরও অ্যারে ডিক্লেয়ার সম্ভব। যেমন : struct student data[3];
এখানে ডাটা নামের একটি স্ট্রাকচার অ্যারে ডিক্লেয়ার করা হলো। তবে ব্যবহারকারী চাইলে অন্যভাবেও অ্যারেটি ডিক্লেয়ার করতে পারেন। যেমন :

struct student data[]={
{“rahim”,01,3.5,101},
{“karim”,02,3.6,202},
{“jamal”,03,3.7,303}
}

এভাবে ব্যবহারকারী চাইলে সরাসরি অ্যারের মান ডিক্লেয়ার করার সময় অ্যাসাইন করে দিতে পারেন। যেমন : এখানে ডাটা নামের অ্যারে ভেরিয়েবলের তিনটি এলিমেন্ট ডিক্লেয়ার করা হয়েছে। প্রতিটি এলিমেন্টের ভেতরে মূল স্ট্রাকচার ভেরিয়েবলের সিকোয়েন্স অনুযায়ী মান অ্যাসাইন করা হয়েছে। এই সিকোয়েন্স যদি ঠিক না থাকে, তাহলে এরর দেখাতে পারে, অথবা এরর না দেখালেও ফলাফল ভুল হতে পারে অথবা গারবেজ ভ্যালু চলে আসতে পারে। তাই এভাবে অ্যারে ডিক্লেয়ার করার সময় এই সিকোয়েন্সের দিকেই বেশি খেয়াল রাখতে হবে। আরেকটি গুরুত্বপূর্ণ বিষয় হলো, অ্যারে ভেরিয়েবলের মান উপরের মতো করে অ্যাসাইন করার সময় প্রতিটি এলিমেন্টের পরে একটি করে কমা দিতে হবে, কিন্তু শেষ এলিমেন্টের পরে কোনো কমা দেয়া যাবে না। দিলে এরর দেখাবে।
স্ট্রাকচারের ভেরিয়েবলকেই শুধু অ্যারে হিসেবে ডিক্লেয়ার করা যায় না, এর মেম্বারকেও অ্যারে হিসেবে ব্যবহার করা যায়। যেমন :
struct student
{
char name[4];
}data;
এখানে ডাটা ভেরিয়েবলের মেম্বার হিসেবে একটি ক্যারেক্টার অ্যারে ব্যবহার করা হয়েছে। তাই একে ব্যবহার করতে হলে নিচের মতো কোড লিখতে হবে :
data.name[0]=’A’;
আর এ ক্ষেত্রে যদি ডাটা ভেরিয়েবলের অ্যারে থাকত, তাহলে এই কোডটি লিখতে হবে :
data[0].name[0]=’A’;
একইভাবে এখানে যদি কোনো নেস্টেড স্ট্রাকচারের অ্যারে থাকত, তাহলে তাকেও সাধারণ অ্যারের নিয়মানুসারে অ্যাক্সেস করা যেত।

Leave a Reply

Your email address will not be published. Required fields are marked *