logo

typedef i C

De typdef är ett nyckelord som används i C-programmering för att ge några meningsfulla namn till den redan existerande variabeln i C-program . Det beter sig på samma sätt som vi definierar aliaset för kommandona. Kortfattat kan vi säga att detta nyckelord används för att omdefiniera namnet på en redan existerande variabel.

Syntax för typedef

 typedef 

I ovanstående syntax, ' existerande_namn' är namnet på en redan existerande variabel medan ' alias namn' är ett annat namn som ges till den befintliga variabeln.

Anta till exempel att vi vill skapa en variabel av typen osignerad int , då blir det en tråkig uppgift om vi vill deklarera flera variabler av denna typ. För att övervinna problemet använder vi en typdef nyckelord.

 typedef unsigned int unit; 

I ovanstående uttalanden har vi deklarerat enhet variabel av typen unsigned int genom att använda en typdef nyckelord.

Nu kan vi skapa variabler av typen osignerad int genom att skriva följande uttalande:

 unit a, b; 

istället för att skriva:

 unsigned int a, b; 

Hittills har vi observerat att typdef nyckelord ger en trevlig genväg genom att tillhandahålla ett alternativt namn för en redan existerande variabel. Detta nyckelord är användbart när vi har att göra med den långa datatypen, särskilt strukturdeklarationer.

imessage-spel med Android

Låt oss förstå genom ett enkelt exempel.

 #include int main() { typedef unsigned int unit; unit i,j; i=10; j=20; printf('Value of i is :%d',i); printf('
Value of j is :%d',j); return 0; } 

Produktion

 Value of i is :10 Value of j is :20 

Använder typedef med strukturer

Tänk på strukturdeklarationen nedan:

 struct student { char name[20]; int age; }; struct student s1; 

I strukturdeklarationen ovan har vi skapat variabeln av studerande skriv genom att skriva följande påstående:

 struct student s1; 

Ovanstående uttalande visar skapandet av en variabel, d.v.s. s1, men uttalandet är ganska stort. För att undvika ett så stort uttalande använder vi typdef nyckelord för att skapa variabeln typ studerande .

 struct student { char name[20]; int age; }; typedef struct student stud; stud s1, s2; 

I ovanstående uttalande har vi deklarerat variabeln hingst av typ struct elev. Nu kan vi använda hingst variabel i ett program för att skapa variabler av typen struct student .

Ovanstående typedef kan skrivas som:

 typedef struct student { char name[20]; int age; } stud; stud s1,s2; 

Av ovanstående förklaringar drar vi slutsatsen att typdef nyckelord minskar längden på koden och komplexiteten för datatyper. Det hjälper också till att förstå programmet.

Låt oss se ett annat exempel där vi skriver in strukturdeklarationen.

 #include typedef struct student { char name[20]; int age; }stud; int main() { stud s1; printf('Enter the details of student s1: '); printf('
Enter the name of the student:'); scanf('%s',&s1.name); printf('
Enter the age of student:'); scanf('%d',&s1.age); printf('
 Name of the student is : %s', s1.name); printf('
 Age of the student is : %d', s1.age); return 0; } 

Produktion

 Enter the details of student s1: Enter the name of the student: Peter Enter the age of student: 28 Name of the student is : Peter Age of the student is : 28 

Använder typedef med pekare

Vi kan också ge ett annat namn eller aliasnamn till pekarvariablerna med hjälp av typdef .

Till exempel deklarerar vi normalt en pekare, som visas nedan:

 int* ptr; 

Vi kan byta namn på pekarvariabeln ovan enligt nedan:

gimp ändra färg
 typedef int* ptr; 

I ovanstående uttalande har vi deklarerat variabeln typ int* . Nu kan vi skapa variabeln typ int* genom att helt enkelt använda ' ptr' variabel som visas i nedanstående uttalande:

 ptr p1, p2 ; 

I uttalandet ovan, p1 och p2 är variablerna av typen ' ptr' .