ডেটা টাইপ (Data Type)
সি-প্রোগ্রামে ইনপুটকৃত ডেটার ধরনকে ডেটা টাইপ বলে। প্রোগ্রামে কোন ধরনের ডেটা ইনপুট নেওয়া হবে তা আগেই বলে দিতে হয়। Datatype বলে দেওয়ার জন্য কী-ওয়ার্ড ব্যবহার করা হয়। যেমন-পূর্ণসংখ্যা ইনপুট নেওয়ার জন্য int কী-ওয়ার্ড ব্যবহৃত হয়।
ডেটা টাইপ এর প্রকারভেদ :
সি-এর ডেটা টাইপ প্রধাণত তিন ধরনের। যথা-
১. ইউজার ডিফাইনড/কাস্টম (User Defined)
- স্ট্রাকচার (Structure)
- ইউনিয়ন (Union)
- ইনুমারেশন (Enumeration)
- ক্লাস (Class)
২. ডিরাইভড (Derived)
- অ্যারে (Array)
- ফাংশন (Function)
- পয়েন্টার (Pointer)
- রেফারেন্স (Reference)
৩. বিল্ট-ইন/প্রাইমারি/ব্যসিক ডেটা টাইপ (Built-in)
- ক্যারেক্টার (Character)
- ইন্টিজার (Integer)
- ফ্লোট (Float)
- ডাবল (Double)
সি-এর মৌলিক ডেটা টাইপ : ডেটার ধরন ও মেমোরী পরিসর সংরক্ষনের ভিত্তিতে সি-ভাষায় চারটি মৌলিক ডেটা টাইপ আছে। যথা-
- Character ডেটা টাইপ : সি-প্রোগ্রামে ক্যারেক্টার টাইপ (‘A’ , ‘a’ ) ডেটা অর্থাৎ বিভিন্ন বর্ণ বা বর্ণমালা নিয়ে কাজ করার জন্য যে ডেটা টাইপ ব্যবহৃত হয় তাকে ক্যারেক্টার ডেটা টাইপ বলে। এর জন্য char কী-ওয়ার্ড লিখতে হয়। যেমন-char x; এর জন্য ১ বাইট মেমোরি স্পেস লাগে। এর ভ্যালু 0-256 এর মধ্যে সীমাবদ্ধ এবং 25 অক্ষর পর্যন্ত লেখা যায়। এ ডেটা টাইপ আবার ২ ধরনের। যথা-১. Signed Char ২. Unsigned Char
- Integer ডেটা টাইপ : সি-প্রোগ্রামে পূর্ণসংখ্যা (25, 60, -45 ) নিয়ে কাজ করার জন্য যে ডেটা টাইপ ব্যবহৃত হয় তাকে ইন্টিজার ডেটা টাইপ বলে। এর জন্য int কী-ওয়ার্ড লিখতে হয়। যেমন-int a; এর জন্য ২ বাইট মেমোরি স্পেস লাগে। এ ডেটা টাইপ আবার ৪ ধরনের। যথা-১. Signed int ২. Unsigned int ৩. Short int ৪. Long int
- Floating ডেটা টাইপ : সি-প্রোগ্রামে ভগ্নাংশ বা দশমিক চিহ্নযুক্ত সংখ্যা (13.65, 25.863 ) নিয়ে কাজ করার জন্য যে ডেটা টাইপ ব্যবহৃত হয় তাকে ফ্লোটিং ডেটা টাইপ বলে। এর জন্য float কী-ওয়ার্ড লিখতে হয়। যেমন-float a; এর জন্য ৪ বাইট মেমোরি স্পেস লাগে। এ ডেটা টাইপে দশমিক চিহ্নের পরে ৬ ডিজিট পর্যন্ত গ্রহণযোগ্য।
- Double ডেটা টাইপ : সি-প্রোগ্রামে ফ্লোটের চেয়ে বড় দশমিক চিহ্নযুক্ত সংখ্যা (3.45253678 ) নিয়ে কাজ করার জন্য যে ডেটা টাইপ ব্যবহৃত হয় তাকে ডাবল ডেটা টাইপ বলে। এর জন্য double কী-ওয়ার্ড লিখতে হয়। যেমন-double a; এর জন্য ৮ বাইট মেমোরি স্পেস লাগে। ডাবল ডেটা টাইপে দশমিক চিহ্নের পর ১৪ ডিজিট পর্যন্ত গ্রহণযোগ্য।
Note : একটি ফাংশন কোন কিছু রিটার্ন করবে না বুঝাতে যে ডেটা টাউপ ব্যবহৃত হয় তাকে Void ডেটা টাইপ বলে। Void ডেটা টাইপ বলতে বুঝায় এর কোন ভ্যালু নেই।
কী-ওয়ার্ড (Keyword) :
কী-ওয়ার্ড হলো প্রোগ্রামে ব্যবহৃত কতগুলো সংরক্ষিত বিশেষ শব্দ যা একটি নির্দিষ্ট অর্থ বহন করে এবং প্রোগ্রামে একটি নির্দিষ্ট কার্য সম্পাদন করে। সি-ভাষায় ৩২ টি স্ট্যান্ডার্ড কী-ওয়ার্ড রয়েছে এবং সি++ এ আরো ৩০টি নতুন কী-ওয়ার্ড আছে।
সি-এর ৩২টি স্ট্যান্ডার্ড কী-ওয়ার্ড নিচে দেওয়া হলো-
auto | double | int | struct |
break | else | long | switch |
case | enum | resister | typeof |
char | extern | return | union |
const | float | short | unsigned |
continue | for | signed | void |
default | goto | sizeof | volatile |
do | if | static | while |
keyword-ব্যবহারের নিয়ম :
১. কী-ওয়ার্ডসমূহের প্রতিটি বর্ণ ছোট হাতের হতে হবে। যেমন-
- Int (invalid keyword)
- int (valid keyword)
২. কী-ওয়ার্ডসমূহের নাম একটি একক শব্দ । এর মাঝে কোন ফাঁকা স্থান থাকে না। যেমন-
- In t (invalid keyword)
- int (valid keyword)
৩. কখনো যদি দুইটি কী-ওয়ার্ড একত্রে ব্যবহার করা হয় তখন তাদের মাঝে ফাঁকা স্থান থাকে। যেমন-
- longdouble (invalid keyword)
- long double (valid keyword)
৪. কী-ওয়ার্ড কখনো ভেরিয়েবল বা চলকের নাম হিসেবে ব্যবহৃত হয় না।
ভেরিয়েবল (Variable) বা চলক :
সি-ভাষায় মেমোরিতে ডেটা সংরক্ষণ করতে যে নাম ব্যবহৃত হয় তাকে ভেরিয়েবল বা চলক বলে। চলক ঘোষণার ফরমেট হলো-
- Data_type Variavle_Name;
- যেমন : int base; এখানে base হলো চলক যার মধ্যে ইন্টিজার টাইপের ডেটা রাখা যাবে।
ডিক্লারেশনের উপর ভিত্তি করে ভেরিয়েবল ২ ধরনের। যথা-
১. লোকাল ভেরিয়েবল(Local Variable)
২. গ্লোবাল ভেরিয়েবল(Global Variable)
লোকাল ভেরিয়েবল(Local Variable) : কোন ফাংশনের মধ্যে ভেরিয়েবল ডিক্লেয়ার করলে তাকে উক্ত ফাংশনের লোকাল ভেরিয়েবল বলে। লোকাল ভেরিয়েবলের কর্মকান্ড শুধুমাত্র সংশ্লিষ্ট ফাংশনের মধ্যেই সীমাবদ্ধ থাকে। কোন ফাংশনের মধ্যে ডিক্লেয়ার করা লোকাল ভেরিয়েবল উক্ত ফাংশনের বাইরে ব্যবহার করা যায় না।
গ্লোবাল ভেরিয়েবল(Global Variable) : সকল ফাংশনের বাইরে প্রোগ্রামের শুরুতে ডিক্লেয়ার করা ভেরিয়েবলকে গ্লোবাল ভেরিয়েবল বলে। গ্লোবাল ভেরিয়েবলের কর্মকান্ড কোন ফাংশনের মধ্যেই সীমাবদ্ধ থাকে না বলে একে গ্লোবাল বা সার্বজনীন ভেরিয়েবল বলে। এ ভেরিয়েবল ফাংশনের সর্বত্র ব্যবহার করা যায়।
শিক্ষার্থীর বাড়ির কাজ : লোকাল ভেরিয়েবল ও গ্লোবাল ভেরিয়েবলের মধ্যে পার্থক্য লেখ।
ভেরিয়েবল বা চলক নামকরনের নিয়ম :
- ভেরিয়েবলের নামের মধ্যে বর্ণ(A…Z, a….z), ডিজিট(0,1……9), আন্ডার স্কোর( _ ) এবং ডলার সাইন ($) ব্যতিত অন্য কোন ক্যারেক্টার ব্যবহার করা যায় না।
- ভেরিয়েবলের নাম ডিজিট বা অঙ্ক দিয়ে শুরু হতে পারে না।
- কী-ওয়ার্ড, ফাংশন, স্টেটমেন্ট ভেরিয়েবলের নাম হিসেবে ব্যবহৃত হয় না।
- ভেরিয়েবলের নামের মধ্যে কোন ফাঁকা স্থান থাকতে পারে না।
- একই ফাংশনে একই নামে দুই বা ততোধিক ভেরিয়েবল ঘোষণা করা যায় না।
- ভেরিয়েবলের নামকরনে সর্বাধিক ৩১ ক্যারেক্টার ব্যবহার করা যায়। তবে সর্বোচ্চ ৮ ক্যারেক্টার ব্যবহার করাই শ্রেয়।
সি-টোকেন : সি-প্রোগ্রামিং ভাষায় সবচেয়ে ক্ষুদ্রতম একককে টোকেন বলে। সি-প্রোগ্রাম কতগুলো স্টেটমেন্ট নিয়ে গঠিত। স্টেটমেন্টগুলো আবার কতগুলো ওয়ার্ড বা ক্যারেক্টার নিয়ে গঠিত হয়।
সি-ভাষায় ছয় ধরনের টোকেন রয়েছে। যথা-
- ১. Keywords: auto, break, int ইত্যাদি।
- ২. Constant : সি-প্রোগ্রামিং ভাষায় এমন কিছু মান আছে যা কখনো পরিবর্তন হয় না। যেমন- 3.1416, 65, 76 ইত্যাদি। কনস্ট্যান্ট ঘোষণার নিয়ম #define constant_name Value যেমন- #define pi 3.1416
- ৩. Identifier : যে কোন চলক বা ব্লকের নাম। যেমন-sum,main ইত্যাদি।
- ৪. Strings : কতগুলো ক্যারেক্টারের সমষ্টি হচ্ছে স্ট্রিং। স্ট্রিং সবসময় { “ “ } এর মাঝে আবদ্ধ থাকে। যেমন- ’A’, “Dhaka” ইত্যাদি।
- ৫. Special Symbols : #, @, & ইত্যাদি।
- ৬. Operators : +, -, /, % ইত্যাদি। পরবর্তী অংশে Operators সম্পর্কে জানবো।
তৃতীয় অধ্যায় লেকচার-১৬: রেজিস্টার এবং কাউন্টার সম্পর্কে আলোচনা।
Written by:
Author at www.habibictcare.com
Email:habibbzm2018@gmail.com
Cell: +8801712-128532,+8801913865284
খুব ভালো লিখেছেন অনেক কিছু জানতে পারলাম!
I learned a lot from your blog and most of all thank you for explaining in such a beautiful way.
I learned a lot from your blog and most of all thank you for explaining in such a beautiful way.