De typedef is een sleutelwoord dat wordt gebruikt in C-programmering om een aantal betekenisvolle namen te geven aan de reeds bestaande variabele in de C-programma . Het gedraagt zich op dezelfde manier als we de alias voor de opdrachten definiëren. Kort gezegd kunnen we zeggen dat dit trefwoord wordt gebruikt om de naam van een reeds bestaande variabele opnieuw te definiëren.
Syntaxis van typedef
typedef
In de bovenstaande syntaxis, ' bestaande_naam' is de naam van een reeds bestaande variabele terwijl ' alias naam' is een andere naam die aan de bestaande variabele wordt gegeven.
Stel dat we bijvoorbeeld een variabele van het type willen maken niet ondertekend int , dan wordt het een vervelende taak als we meerdere variabelen van dit type willen declareren. Om het probleem te overwinnen, gebruiken we een typedef trefwoord.
typedef unsigned int unit;
In de bovenstaande verklaringen hebben we de eenheid variabele van het type unsigned int door gebruik te maken van een typedef trefwoord.
Nu kunnen we de variabelen van het type maken niet ondertekend int door de volgende verklaring te schrijven:
unit a, b;
in plaats van te schrijven:
unsigned int a, b;
Tot nu toe hebben we geconstateerd dat de typedef trefwoord biedt een leuke snelkoppeling door een alternatieve naam op te geven voor een reeds bestaande variabele. Dit trefwoord is handig als we te maken hebben met het lange gegevenstype, met name structuurdeclaraties.
cast in naar string java
Laten we het begrijpen aan de hand van een eenvoudig voorbeeld.
#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; }
Uitvoer
Value of i is :10 Value of j is :20
Typedef gebruiken met structuren
Beschouw de onderstaande structuurverklaring:
struct student { char name[20]; int age; }; struct student s1;
In de bovenstaande structuurdeclaratie hebben we de variabele van gemaakt student typ door de volgende verklaring te schrijven:
struct student s1;
De bovenstaande verklaring toont de creatie van een variabele, d.w.z. s1, maar de verklaring is behoorlijk groot. Om zo'n grote uitspraak te voorkomen, gebruiken we de typedef trefwoord om de variabele van het type te maken student .
struct student { char name[20]; int age; }; typedef struct student stud; stud s1, s2;
In de bovenstaande verklaring hebben we de variabele gedeclareerd stoeterij van het type structstudent. Nu kunnen we de stoeterij variabele in een programma om de variabelen van het type te maken leerling structureren .
Het bovenstaande typedef kan worden geschreven als:
typedef struct student { char name[20]; int age; } stud; stud s1,s2;
Uit bovenstaande verklaringen concluderen wij dat typedef trefwoord vermindert de lengte van de code en de complexiteit van gegevenstypen. Het helpt ook bij het begrijpen van het programma.
Laten we nog een voorbeeld bekijken waarin we de structuurdeclaratie typen.
#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; }
Uitvoer
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
Typedef gebruiken met verwijzingen
Met behulp van kunnen we ook een andere naam of aliasnaam aan de pointervariabelen geven het typedef .
Normaal gesproken declareren we bijvoorbeeld een pointer, zoals hieronder weergegeven:
int* ptr;
We kunnen de bovenstaande pointervariabele hernoemen zoals hieronder aangegeven:
typedef int* ptr;
In de bovenstaande verklaring hebben we de variabele type gedeclareerd int* . Nu kunnen we de variabele type maken int* door simpelweg de ' ptr' variabele zoals weergegeven in de onderstaande verklaring:
ptr p1, p2 ;
In de bovenstaande verklaring staat p1 En p2 zijn de variabelen van het type ' ptr' .
Booleaans naar tekenreeks