The typedef je ključna beseda, ki se uporablja za zagotavljanje novega imena obstoječim tipom podatkov. Ključna beseda C typedef se uporablja za ponovno definiranje imena že obstoječih tipov podatkov.
Ko postane imena podatkovnih tipov težko uporabljati v programih, se typedef uporablja z uporabniško definiranimi podatkovnimi tipi, ki se obnašajo podobno kot definiranje vzdevka za ukaze.
C typedef sintaksa
typedef existing_name alias_name;>
Po tej deklaraciji lahko uporabimo vzdevek_ime kot da bi bil pravi obstoječe_ime v izhodnem programu C.
Primer typedef v C
typedef long long ll;>
Spodaj je program C za ponazoritev uporabe typedef.
C
ponovi zemljevid v Javi
// C program to implement typedef> #include> // defining an alias using typedef> typedef> long> long> ll;> // Driver code> int> main()> {> > // using typedef name to declare variable> > ll var = 20;> > printf> (> '%ld'> , var);> > return> 0;> }> |
>
>Izhod
20>
Uporaba typedef v C
Sledi nekaj pogostih uporab typedef v programiranju C:
- Ključna beseda typedef daje obstoječemu podatkovnemu tipu smiselno ime, ki drugim uporabnikom pomaga lažje razumeti program.
- Lahko se uporablja s strukturami za povečanje berljivosti kode in nam ni treba večkrat tipkati struct.
- Ključno besedo typedef lahko uporabite tudi s kazalci za deklaracijo več kazalcev v enem stavku.
- Uporablja se lahko z nizi za deklariranje poljubnega števila spremenljivk.
1. typedef struct
typedef se lahko uporablja tudi s strukturami v programskem jeziku C. Ustvarite lahko nov podatkovni tip in ga uporabite za definiranje strukturne spremenljivke.
Primer 1: Uporaba typedef za definiranje imena za strukturo
C
// C program to implement> // typedef with structures> #include> #include> // using typedef to define an alias for structure> typedef> struct> students {> > char> name[50];> > char> branch[50];> > int> ID_no;> } stu;> // Driver code> int> main()> {> > stu st;> > strcpy> (st.name,> 'Kamlesh Joshi'> );> > strcpy> (st.branch,> 'Computer Science And Engineering'> );> > st.ID_no = 108;> > printf> (> 'Name: %s
'> , st.name);> > printf> (> 'Branch: %s
'> , st.branch);> > printf> (> 'ID_no: %d
'> , st.ID_no);> > return> 0;> }> |
>
>Izhod
Name: Kamlesh Joshi Branch: Computer Science And Engineering ID_no: 108>
2. typedef s kazalci
typedef se lahko uporablja tudi s kazalci, saj daje kazalcem vzdevek. Typedef je zelo učinkovit pri deklariranju več kazalcev v enem stavku, ker se kazalci pri preprosti deklaraciji vežejo na desno.
primer:
typedef int* Int_ptr; Int_ptr var, var1, var2;>
V zgornjem stavku so var, var1 in var2 deklarirani kot kazalci tipa int, kar nam pomaga deklarirati več število kazalcev v enem stavku.
Primer 2: Uporaba typedef za definiranje imena za tip kazalca.
C
// C program to implement> // typedef with pointers> #include> typedef> int> * ptr;> // Driver code> int> main()> {> > ptr var;> > *var = 20;> > printf> (> 'Value of var is %d'> , *var);> > return> 0;> }> |
>
>Izhod
Value of var is 20>
3. typedef z Array
typedef lahko uporabite tudi z nizom, da povečate njihovo število.
primer:
typedef int arr[20]>
Tu je arr vzdevek za polje 20 celih elementov.
// it's same as Arr[20], two-Arr[20][23]; arr Arr, two-Arr[23];>
Primer 3: Uporaba typedef za definiranje vzdevka za Array.
C
// C program to implement typedef with array> #include> typedef> int> Arr[4];> // Driver code> int> main()> {> > Arr temp = { 10, 20, 30, 40 };> > printf> (> 'typedef using an array
'> );> > for> (> int> i = 0; i <4; i++) {> > printf> (> '%d '> , temp[i]);> > }> > return> 0;> }> |
>
>Izhod
typedef using an array 10 20 30 40>
C typedef proti #define
Sledijo glavne razlike med typedef in #define v C:
- #define lahko definira tudi vzdevke za vrednosti, na primer, lahko definirate 1 kot ONE, 3.14 kot PI itd. Typedef je omejen samo na dajanje simboličnih imen tipom.
- Predprocesorji interpretirajo stavke #define, medtem ko prevajalnik interpretira stavke typedef.
- Na koncu #define ne sme biti podpičja, temveč podpičje na koncu typedef.
- V nasprotju z #define bo typedef dejansko definiral nov tip s kopiranjem in lepljenjem vrednosti definicije.
Spodaj je program C za implementacijo #define:
C
// C program to implement #define> #include> // macro definition> #define LIMIT 3> // Driver code> int> main()> {> > for> (> int> i = 0; i printf('%d
', i); } return 0; }> |
>
>Izhod
0 1 2>
Pogosta vprašanja o typedef v C
1. Kaj je typedef v C?
Stavek C typedef definira vzdevek ali vzdevek za že obstoječi tip podatkov.
2. Kaj je typedef struct?
Struktura typedef je stavek, ki se uporablja za definiranje vzdevka za podatkovni tip strukture.
3. Kaj je typedef enum?
Enum typedef se uporablja za definiranje vzdevka za podatkovni tip oštevilčenja.