logo

#define in C

In der C-Programmierung #definieren ist eine Präprozessordirektive, die zum Definieren von Makros verwendet wird. Die Makros sind die durch #define definierten Bezeichner, die vor der Kompilierung durch ihren Wert ersetzt werden. Mit #define können wir Konstanten und Funktionen wie Makros definieren. Die Generika in C werden auch mithilfe der Präprozessordirektive #define zusammen mit implementiert _Generisch.

Syntax von C #define

Die Syntax von #define Präprozessor-Direktive in C ist:



Zum Definieren von Konstanten

  #define   MACRO_NAME   value>

Zum Definieren von Ausdrücken

  #define   MACRO_NAME   (expression within brackets)>

Zum Definieren eines Ausdrucks mit Parametern

In den Makros übergebene Argumente können im Ausdruck verwendet werden.

  #define   MACRO_NAME(  ARG1, ARG2  ,..)   (expression within brackets)>

Es gibt noch einige weitere Möglichkeiten, mit denen wir Makros definieren können. Weitere Informationen finden Sie in diesem Artikel – Makros und ihre Typen in C

Beispiele für C #define

Beispiel 1:

Im folgenden Beispiel haben wir ein Makro definiert 'PI' und weist ihm einen konstanten Wert zu, den wir später im Programm verwenden können, um die Fläche eines Kreises zu berechnen.



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

hasnext Java
>

>

Ausgabe

Area of Circle of radius 21: 1385>

Beispiel 2:

Im folgenden Beispiel haben wir ein Makro definiert 'PI' und weist ihm einen Ausdruck zu, und dieser Wert des Ausdrucks wird im Programm verwendet '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;> }>

>

>

Ausgabe

Area of Circle of radius 7: 147>

Beispiel 3:

Im folgenden Beispiel haben wir zwei Makros definiert KREIS_BEREICH Und SQUARE_AREA mit einem Parameter und dieser Parameter wird im Ausdruck verwendet, um die Fläche des Kreises bzw. des Quadrats zu berechnen .

C

Zahlen im Alphabet




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

>

>

Ausgabe

Area of Circle of radius 21: 1384 Area of square of side 5: 25>

Wichtige Punkte

  • Mit #define deklarierte Makros dienen zum Speichern von Konstanten und können nicht geändert werden. Wir können den Makros keine Variablen zuweisen.
  • Wir können das nicht nutzen '=' Operator, um den Makros einen Wert zuzuweisen (z. #define PI 3.14 ).
  • Wir verwenden kein Semikolon ';' am Ende der Anweisung in #define.