Визначення типу C

The typedef це ключове слово, яке використовується для надання нового імені існуючим типам даних. Ключове слово C typedef використовується для перевизначення назв уже існуючих типів даних.

Коли імена типів даних стає важко використовувати в програмах, typedef використовується з типами даних, визначеними користувачем, які поводяться подібно до визначення псевдонімів для команд.

C typedef Синтаксис

 typedef existing_name alias_name; 

Після цієї декларації ми можемо використовувати псевдонім_ім'я наче справжня існуюче_ім'я у вихідній програмі C.

Приклад typedef у C

 typedef long long ll; 

Нижче наведено програму на C, щоб проілюструвати, як використовувати typedef.

C




// 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;> }>

Вихід

20 

Використання typedef у C

Нижче наведено деякі типові випадки використання typedef у програмуванні на C:

  • Ключове слово typedef дає змістовну назву існуючому типу даних, що допомагає іншим користувачам легше зрозуміти програму.
  • Його можна використовувати зі структурами, щоб підвищити читабельність коду, і нам не потрібно вводити структуру повторно.
  • Ключове слово typedef також можна використовувати з покажчиками для оголошення кількох покажчиків в одному операторі.
  • Його можна використовувати з масивами для оголошення будь-якої кількості змінних.

1. typedef struct

typedef також можна використовувати зі структурами на мові програмування C. Новий тип даних може бути створений і використаний для визначення структурної змінної.

Приклад 1: Використання typedef для визначення імені для структури

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;> }>

Вихід

Name: Kamlesh Joshi Branch: Computer Science And Engineering ID_no: 108 

2. typedef з покажчиками

typedef також можна використовувати з покажчиками, оскільки він дає псевдонім покажчикам. Typedef є дуже ефективним при оголошенні кількох покажчиків в одному операторі, оскільки покажчики прив’язуються праворуч у простому оголошенні.

приклад:

typedef int* Int_ptr; Int_ptr var, var1, var2; 

У наведеному вище операторі var, var1 і var2 оголошено як вказівники типу int, що допомагає нам оголосити декілька вказівників в одному операторі.

Приклад 2: Використання typedef для визначення імені для типу покажчика.

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;> }>

Вихід

Value of var is 20 

3. typedef з Array

typedef також можна використовувати з масивом, щоб збільшити їх кількість.

приклад:

typedef int arr[20] 

Тут arr є псевдонімом для масиву з 20 цілих елементів.

// it's same as Arr[20], two-Arr[20][23]; arr Arr, two-Arr[23]; 

Приклад 3: використання typedef для визначення псевдоніма для 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;> }>

Вихід

typedef using an array 10 20 30 40 

C typedef проти #define

Нижче наведено основні відмінності між typedef і #define у ​​C:

  1. #define також може визначати псевдоніми для значень, наприклад, ви можете визначити 1 як ONE, 3.14 як PI тощо. Typedef обмежується лише наданням символьних імен типам.
  2. Препроцесори інтерпретують оператори #define, тоді як компілятор інтерпретує оператори typedef.
  3. У кінці #define не повинно бути крапки з комою, а в кінці typedef має бути крапка з комою.
  4. На відміну від #define, typedef фактично визначить новий тип шляхом копіювання та вставки значень визначення.

Нижче наведено програму C для реалізації #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; }>

Вихід

0 1 2 

Поширені запитання щодо typedef у C

1. Що таке typedef у C?

Оператор C typedef визначає псевдонім або псевдонім для вже існуючого типу даних.

2. Що таке typedef struct?

Структура typedef — це оператор, який використовується для визначення псевдоніма для типу даних структури.

3. Що таке typedef enum?

Перелік typedef використовується для визначення псевдоніма для типу даних перерахування.