প্রতিদিন আমারা বিভিন্ন ধরনের বস্তু রাখার জন্য পাত্র বা স্থানের প্রয়োজন হয়, একই ভাবে প্রোগ্রামিং করার সময় যখন কোন ডাটা সংরক্ষন করার প্রয়োজন হয় তখন আমাদের একটি মেমরী স্পেস দরকার হয়। এই মেমরী স্পেসকেই প্রোগ্রামের ভাষায় ভেরিয়েবল বলা হয় । অর্থাৎ ভেরিয়েবল হচ্ছে মেমরী এড্রেস এর নাম, যেখানে কোন তথ্য সংরক্ষণ করে রাখা হয় । প্রত্যেক ভেরিয়েবলের বেশ কিছু ডাটা টাইপ থাকে যা নির্ধারন করে সেই ভেরিয়েবল কি ধরনের ডাটা সংরক্ষন করবে ।
Type |
Example |
Integral types |
sbyte, byte, short, ushort, int, uint, long, ulong, and char |
Floating point types |
float and double |
Decimal types |
decimal |
Boolean types |
true or false values, as assigned |
Nullable types |
Nullable data types |
সি শার্প ভেরিয়েবলে অন্যান্য ভ্যালু টাইপ যেমনঃ ইনাম টাইপ, রেফারেন্স টাইপ (যেমনঃ ক্লাস) ডাটা সংরক্ষণ করা যায় ।
ভেরিয়েবল ডিফাইন করাঃ
<ডাটা টাইপ> <ভেরিয়েবল লিস্ট>;
এখানে ডাটা টাইপ অবশ্যই সঠিক সি শার্প ডাটা টাইপ হতে হবে যেমনঃ char, int, float, double ইত্যাদি বা ইউজার ডিফাইন ডাটা টাইপ । ভেরিয়েবল লিস্ট এক বা একাধিক আইডেন্টিফায়ার নিয়ে গঠিত । একাধিক আইডেন্টিফায়ারের নাম গুলোকে কমা (,) দ্বারা আলাদা করা হয় । নিচে উদাহারনের সাহায্যে ভেরিয়েবল ডিফাইন করে দেখানো হল
int a;
char b, c;
float d, e, f;
double g, h, i, j, k;
আপনারা চাইলে ভেরিয়েবল ডিফাইন করার সময় এর মান নির্ধারণ করে দিতে পারেন । যেমনঃ
int a = 10;
char b = ‘A’;
ভেরিয়েবলের মান নির্ধারণ করাঃ ভেরিয়েবলের মান নির্ধারণ করার জন্য একটা সাধারণ নিয়ম রয়েছে
<ডাটা টাইপ> <ভেরিয়েবলের নাম> = ভ্যালু;
এখানে নির্দিষ্ট টাইপের ভেরিয়েবলের মধ্যে সমান চিহ্ন (=) ব্যবহার করে ভ্যালু নির্ধারণ করা হয় । যেমনঃ
int a = 10;
byte b = 16;
char c=‘C’;
double pi = 3.1416;
সঠিক ভাবে ভেরিয়েবলের মান নির্ধারণ করে দেওয়া একটা ভাল প্রোগ্রামিং বৈশিষ্ট্য । ভেরিয়েবলের মান নির্ধারণ করে না দিলে মাঝে মাঝে প্রোগ্রামে সঠিক ফলাফল পাওয়া যায়না ।
ইউজারের থেকে ভ্যালু নেয়াঃ সি শার্পে System namespace এর Console class এ ReadLine() নামে এক ধরনের ফাংশন বা মেথড রয়েছে, যার মাধ্যমে ইউজারের কাছ থেকে ভ্যালু নিয়ে ভেরিয়াবলে স্টোর করে রাখা যায় । যেমনঃ
string name;
name = Console.ReadLine();
int number;
number = Convert.ToInt32(Console.ReadLine());
double number2;
number2 = Convert.ToDouble(Console.ReadLine());
এখানে Convert.ToInt32 এবং Convert.ToDouble ইউজার যেই ইনপুট গুলো দিয়েছে পর্যায়ক্রমে সেই ইনপুট গুলোকে int এবং double এ পরিবর্তন বা কনভার্ট করার জন্য ব্যবহার করা হয়েছে । এর কারন হল ReadLine() শুধু মাত্র string ফরমেটে ডাটা গ্রহন করে । যার ফলে প্রথম উদাহারনে পরিবর্তন বা কনভার্ট করার প্রয়োজন হয়নি, কিন্তু পরের উদাহারন গুলতে পর্যায়ক্রমে string থেকে int এবং string থেকে double এ পরিবর্তন বা কনভার্ট করতে হয়েছে ।