typedef কীওয়ার্ড
typedef দিয়ে বিদ্যমান ডেটা টাইপের জন্য নতুন নাম তৈরি করা যায়। এটি নতুন ডেটা টাইপ তৈরি করে না, বরং একটি এলিয়াস (alias) তৈরি করে।
সিনট্যাক্স
typedef existing_type new_name;
সadə উদাহরণ
typedef int hours;
hours h; // এখন h হলো int টাইপের ভেরিয়েবল
h = 2;
printf("Minutes = %d", h * 60); // 120
প্রোগ্রাম: ঘন্টা থেকে মিনিট/সেকেন্ড
#include <stdio.h>
int main() {
typedef int hours;
hours h;
printf("Enter hours: ");
scanf("%d", &h);
printf("Minutes = %d\n", h * 60);
printf("Seconds = %d\n", h * 3600);
return 0;
}
আউটপুট
Enter hours: 1 Minutes = 60 Seconds = 3600
typedef দিয়ে স্ট্রাকচার সংজ্ঞায়িত করা
স্ট্রাকচার ট্যাগের পাশাপাশি typedef ব্যবহার করলে ভেরিয়েবল ঘোষণায় struct কীওয়ার্ড লাগে না।
typedef struct employee {
int eno;
char ename[30];
float sal;
} emp; // 'emp' হলো নতুন টাইপ নাম
int main() {
emp e = {10, "ramu", 5000}; // struct employee e; লিখতে হয় না
printf("Number = %d\n", e.eno);
printf("Name = %s\n", e.ename);
printf("Salary = %.2f\n", e.sal);
return 0;
}
আউটপুট
Number = 10 Name = ramu Salary = 5000.00
typedef এর সুবিধা
- কোড পড়া সহজ হয় (উদাহরণ:
typedef struct node* NodePtr;)। - প্ল্যাটফর্ম-স্বতন্ত্র ডেটা টাইপ ডিফাইন করা যায় (যেমন
int32_t,uint8_t)। - জটিল পয়েন্টার টাইপ সিম্পল করতে হেল্প করে।