У програмуванні C, #визначити це директива препроцесора, яка використовується для визначення макросів. Макроси - це ідентифікатори, визначені #define, які замінюються їхніми значеннями перед компіляцією. Ми можемо визначити константи та функції, такі як макроси, використовуючи #define. Універсали в C також реалізовані за допомогою директиви препроцесора #define разом із _Загальний.
Синтаксис C #define
Синтаксис #define директива препроцесора в C це:
Для визначення констант
#define MACRO_NAME value>
Для визначення виразів
#define MACRO_NAME (expression within brackets)>
Для визначення виразу з параметрами
Аргументи, передані в макросах, можна використовувати у виразі.
#define MACRO_NAME( ARG1, ARG2 ,..) (expression within brackets)>
Є ще кілька способів, за допомогою яких ми можемо визначити макроси. Щоб дізнатися більше, перегляньте цю статтю – Макроси та їх види в С
Приклади C #define
приклад 1:
У наведеному нижче прикладі ми визначили макрос 'PI' і присвоїв йому постійне значення, яке ми можемо використовувати пізніше в програмі для обчислення площі кола.
C
// C Program to illustrate how to use #define to declare> // constants> #include> > // Defining macros with constant value> #define PI 3.14159265359> > int> main()> {> > >int> radius = 21;> >int> area;> > >// Using macros to calculate area of circle> >area = PI * radius * radius;> > >printf>(>'Area of Circle of radius %d: %d'>, radius, area);> > >return> 0;> }> |
>
>Вихід
Area of Circle of radius 21: 1385>
приклад 2:
У наведеному нижче прикладі ми визначили макрос 'PI' і призначив йому вираз, і це значення виразу використовується в програмі за допомогою «PI».
C
// C Program to illustrate the defining of expression using> // #define> #include> > // Defining macros with expression> #define PI (22 / 7)> > int> main()> {> > >int> radius = 7;> >int> area;> > >// Using macros to calculate area of circle> >area = PI * radius * radius;> > >printf>(>'Area of Circle of radius %d: %d'>, radius, area);> > >return> 0;> }> |
>
>Вихід
Area of Circle of radius 7: 147>
приклад 3:
У прикладі нижче ми визначили два макроси CIRCLE_AREA і SQUARE_AREA з параметром, і цей параметр використовується у виразі для обчислення площі кола та квадрата відповідно .
C
виконати цикл while у java
// C Program to define the function like macros using> // #define> #include> > // Defining parameterized macros with expression> #define CIRCLE_AREA(r) (3.14 * r * r)> #define SQUARE_AREA(s) (s * s)> > int> main()> {> > >int> radius = 21;> >int> side = 5;> >int> area;> > >// Using macros to calculate areas by> >// passing argument> >area = CIRCLE_AREA(radius);> >printf>(>'Area of Circle of radius %d: %d
'>, radius,> >area);> > >area = SQUARE_AREA(side);> >printf>(>'Area of square of side %d: %d'>, side, area);> > >return> 0;> }> |
>
>Вихід
Area of Circle of radius 21: 1384 Area of square of side 5: 25>
Важливі моменти
- Макроси, оголошені за допомогою #define, використовуються для зберігання констант і не можуть бути змінені. ми не можемо призначити змінні макросам.
- Ми не можемо використовувати '=' оператор для призначення значення макросам (наприклад, #define PI 3.14 ).
- Ми не використовуємо крапку з комою ';' в кінці оператора в #define.