চলক, ধ্রুবক ও ডাটা টাইপ
আমরা অনেক সময় এভাবে লিখতে পারি: x = 5। এর অর্থ হলো, x-এর মান ৫। তবে সি প্রোগ্রামিং ভাষায় চলক ব্যবহারের সময় সাধারণত তার ডেটাটাইপ উল্লেখ করতে হয়। যেমন:
ডেটাটাইপ
চলক
ডেটা
ডাটা টাইপ
প্রোগ্রামিং ভাষায় ডেটার ধরনকে ডেটাটাইপ বলে। সি ভাষায় বিভিন্ন ধরনের ডেটা সংরক্ষণের জন্য বিভিন্ন ডেটাটাইপ ব্যবহার করা হয়। চারটি মৌলিক ডেটাটাইপ হলো int, float, double ও char।
ইন্টিজার (int)
পূর্ণসংখ্যার জন্য int ডেটাটাইপ ব্যবহার করা হয়। যেমন: int x = 4; এখানে x চলকটিতে 4 মানটি সংরক্ষিত হয়েছে।
উদাহরণ
1int x = 5;
2 ব্যাখ্যা
এখানে int হলো ডেটাটাইপ, x হলো চলক এবং 5 হলো চলকের প্রাথমিক মান। int ডেটাটাইপের সাইজ সাধারণত ৪ বাইট, তবে কম্পাইলার ও সিস্টেমভেদে ভিন্ন হতে পারে। পূর্ণসংখ্যা গ্রহণ কিংবা প্রদর্শনের ফরম্যাট স্পেসিফায়ার হলো %d।
ফ্লোট (float)
ভগ্নাংশযুক্ত সংখ্যা সংরক্ষণের জন্য float ডেটাটাইপ ব্যবহার করা হয়। যেমন: float x = 4.4; এখানে x চলকটিতে 4.4 মানটি সংরক্ষিত হয়েছে।
উদাহরণ
1float x = 4.4;ব্যাখ্যা
float ডেটাটাইপের সাইজ সাধারণত ৪ বাইট। scanf() দিয়ে float মান গ্রহণ এবং printf() দিয়ে প্রদর্শনের ফরম্যাট স্পেসিফায়ার হলো %f।
ডাবল (double)
float-এর তুলনায় সাধারণত বেশি নির্ভুলতায় ভগ্নাংশযুক্ত সংখ্যা সংরক্ষণের জন্য double ডেটাটাইপ ব্যবহার করা হয়। যেমন: double x = 454545.123456;
উদাহরণ
1double x = 454545.123456;ব্যাখ্যা
double ডেটাটাইপের সাইজ সাধারণত ৮ বাইট। scanf() দিয়ে double মান গ্রহণের ফরম্যাট স্পেসিফায়ার হলো %lf এবং printf() দিয়ে প্রদর্শনের ফরম্যাট স্পেসিফায়ার হলো %f।
ক্যারেক্টার (char)
একটি অক্ষর বা ক্যারেক্টার সংরক্ষণের জন্য char ডেটাটাইপ ব্যবহার করা হয়। যেমন: char x = 'A'; এখানে x চলকটিতে A অক্ষরটি সংরক্ষিত হয়েছে।
উদাহরণ
1char x = 'A';ব্যাখ্যা
char ডেটাটাইপের সাইজ সাধারণত ১ বাইট। ক্যারেক্টার গ্রহণ কিংবা প্রদর্শনের ফরম্যাট স্পেসিফায়ার হলো %c। সি ভাষায় একটি ক্যারেক্টার লেখার জন্য একক উদ্ধৃতি চিহ্ন ব্যবহার করতে হয়।
একাধিক অক্ষর নিয়ে গঠিত শব্দ বা বাক্যকে স্ট্রিং (String) বলে। C ভাষায় char অ্যারে ব্যবহার করে স্ট্রিং সংরক্ষণ করা যায়। স্ট্রিং লেখার জন্য ডাবল কোটেশন ব্যবহার করতে হয়।
উদাহরণ
1char name[] = "Topline";চলক (Variable)
আমরা দৈনন্দিন জীবনে বিভিন্ন ধরনের পাত্র ব্যবহার করি। যেমন: পানির জগ, ভাতের থালা, ওষুধের বোতল ইত্যাদি। চলককে পাত্রের সঙ্গে তুলনা করা যায়। কারণ, পাত্রের মধ্যে যেমন বিভিন্ন জিনিস রাখা যায়, একইভাবে চলকের মধ্যেও বিভিন্ন মান সংরক্ষণ করা যায়। প্রোগ্রামিংয়ে চলক হলো একটি নামযুক্ত মেমোরি অবস্থান, যেখানে ডেটা সংরক্ষণ করা হয় এবং প্রোগ্রাম চলাকালীন এর মান পরিবর্তন করা যায়।
মনে রেখো
প্রোগ্রামে ডেটা সংরক্ষণের জন্য ব্যবহৃত নামযুক্ত মেমোরি স্থানকে চলক বলে।
চলকের মান পরিবর্তনশীল
1#include<stdio.h>
2int main()
3{
4 int x = 10;
5 x = 20;
6 printf("Result: %d", x);
7 return 0;
8}
9প্রোগ্রামের আউপুট
Result: 20
ব্যাখ্যা
চলকের মান পরিবর্তন করা যায়।
চলকের নাম লেখার নিয়ম
- সংখ্যা দিয়ে চলকের নাম শুরু করা যাবে না। যেমন:
2numberভুল, কিন্তুnumber2সঠিক। - চলকের নামের মধ্যে ফাঁকা স্থান রাখা যাবে না। যেমন:
my numberভুল, কিন্তুmy_numberসঠিক। - চলকের নামের মধ্যে অক্ষর, সংখ্যা ও আন্ডারস্কোর (
_) ব্যবহার করা যায়। অন্য বিশেষ চিহ্ন ব্যবহার করা যায় না। যেমন:total_marksসঠিক, কিন্তুtotal-marksভুল। - চলকের নামের ক্ষেত্রে বড় ও ছোট হাতের অক্ষর আলাদা হিসেবে বিবেচিত হয়। যেমন:
numberএবংNumberদুটি ভিন্ন চলক। - সি ভাষার কীওয়ার্ড চলকের নাম হিসেবে ব্যবহার করা যায় না। যেমন:
int,float,returnইত্যাদি।
নোট: চলকের নাম অর্থবহ হওয়া উচিত। যেমন, শিক্ষার্থীর বয়স সংরক্ষণের জন্য age এবং মোট নম্বর সংরক্ষণের জন্য total_marks নাম ব্যবহার করলে প্রোগ্রাম বুঝতে সুবিধা হয়।
ধ্রুবক (Constant)
প্রোগ্রামে যে মান পরিবর্তন করা যায় না, তাকে ধ্রুবক বলে। সি ভাষায় কোনো চলকের মান অপরিবর্তিত রাখার জন্য const কিওয়ার্ড ব্যবহার করা হয়।
নিচের প্রোগ্রামটি লক্ষ করো। এখানে x চলকের প্রাথমিক মান 10 হলেও পরবর্তী সময়ে এর মান পরিবর্তন করে 20 করা হয়েছে।
চলকের উদাহরণ
1#include<stdio.h>
2int main()
3{
4 int x = 10;
5 x = 20;
6 printf("Result: %d", x);
7 return 0;
8}
9প্রোগ্রামের আউপুট
Result: 20
কিন্তু কোনো মান নির্ধারণ করার পর সেটি পরিবর্তন করতে না চাইলে const কিওয়ার্ড ব্যবহার করা যায়। নিচের উদাহরণটি লক্ষ করো।
ধ্রুবকের উদাহরণ
1#include<stdio.h>
2int main()
3{
4 const int x = 10;
5 x = 20;
6 printf("Result: %d", x);
7 return 0;
8}প্রোগ্রামের আউপুট
ERROR!
মনে রাখুন
- সি ভাষার জনক ডেনিস রিচি
- সি ভাষার এক্সটেনশন .c
- সি ভাষাকে মধ্যম স্তরের ভাষাও বলা হয়
- সি ভাষা কম্পিউটার সরাসরি বুঝতে পারে না