Det typedef er et nøgleord, der bruges i C-programmering for at give nogle meningsfulde navne til den allerede eksisterende variabel i C program . Det opfører sig på samme måde som vi definerer alias for kommandoerne. Kort sagt kan vi sige, at dette nøgleord bruges til at omdefinere navnet på en allerede eksisterende variabel.
Syntaks for typedef
typedef
I ovenstående syntaks, ' eksisterende_navn' er navnet på en allerede eksisterende variabel mens ' alias navn' er et andet navn givet til den eksisterende variabel.
Antag for eksempel, at vi vil oprette en variabel af typen usigneret int , så bliver det en kedelig opgave, hvis vi ønsker at erklære flere variabler af denne type. For at overvinde problemet bruger vi en typedef søgeord.
typedef unsigned int unit;
I ovenstående erklæringer har vi erklæret enhed variabel af typen unsigned int ved at bruge en typedef søgeord.
Nu kan vi oprette variablerne af typen usigneret int ved at skrive følgende erklæring:
unit a, b;
i stedet for at skrive:
unsigned int a, b;
Indtil nu har vi observeret, at typedef nøgleord giver en god genvej ved at give et alternativt navn til en allerede eksisterende variabel. Dette nøgleord er nyttigt, når vi har at gøre med den lange datatype, især strukturdeklarationer.
omskriv hvis ved rudyard kipling
Lad os forstå gennem et simpelt eksempel.
#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
Brug af typedef med strukturer
Overvej nedenstående strukturerklæring:
struct student { char name[20]; int age; }; struct student s1;
I ovenstående strukturdeklaration har vi oprettet variablen af studerende skriv ved at skrive følgende udsagn:
struct student s1;
Ovenstående udsagn viser oprettelsen af en variabel, dvs. s1, men udsagnet er ret stort. For at undgå et så stort udsagn bruger vi typedef nøgleord for at oprette variablen af typen studerende .
struct student { char name[20]; int age; }; typedef struct student stud; stud s1, s2;
I ovenstående erklæring har vi erklæret variablen stud af type struct elev. Nu kan vi bruge stud variabel i et program for at skabe variablerne af typen struct elev .
Ovenstående typedef kan skrives som:
typedef struct student { char name[20]; int age; } stud; stud s1,s2;
Ud fra ovenstående erklæringer konkluderer vi det typedef nøgleord reducerer længden af koden og kompleksiteten af datatyper. Det hjælper også med at forstå programmet.
Lad os se et andet eksempel, hvor vi skriver def strukturerklæringen.
#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
Bruger typedef med pointere
Vi kan også give et andet navn eller aliasnavn til pointervariablerne ved hjælp af typedef .
For eksempel erklærer vi normalt en pointer, som vist nedenfor:
python chr funktion
int* ptr;
Vi kan omdøbe ovenstående pointervariabel som angivet nedenfor:
typedef int* ptr;
I ovenstående erklæring har vi erklæret variablen type int* . Nu kan vi oprette variablen type int* ved blot at bruge ' ptr' variabel som vist i nedenstående erklæring:
ptr p1, p2 ;
I ovenstående erklæring, p1 og s2 er variablerne af typen ' ptr' .