Què és la directiva #define en C++?

Que Es La Directiva Define En C



El preprocessament en C++ fa referència a la fase inicial de compilació o traducció del programa on el fitxer del programa font es modifica en funció de les directives del preprocessador. Aquestes directives, denotades per la # símbol, són executats pel preprocessador i afecten el codi font abans que s'executi el programa principal.

Les directives del preprocessador en C++ es denoten amb el # (hash) símbol al començament de l'enunciat. Les directives comunes del preprocessador en C++ inclouen inclusió de fitxers i macros definició. Aquestes directives es col·loquen normalment fora de la funció main() a la part superior del programa C++. Durant el preprocessament, un fitxer intermedi amb el fitxer .i es genera l'extensió.

#definir la directiva en C++

En C++, la directiva #define és una directiva de preprocessador que s'utilitza per definir constants o macros. Us permet definir noms o valors simbòlics que es substitueixen al llarg del codi abans que tingui lloc el procés de compilació real.







Aquests són alguns dels aspectes més destacats del preprocessador #define



  • En C++, la directiva de preprocessador #define s'utilitza per definir macros.
  • Les macros en C++ s'anomenen constants o expressions declarades amb la directiva #define.
  • Les directives #define també s'anomenen directrius macro.
  • Quan es troba una directiva #define en un programa C++, el nom de la macro definida es substitueix per un valor o expressió constant durant l'etapa de compilació inicial.

Sintaxi de la directiva #define

La sintaxi per utilitzar la directiva #define és la següent:



#definir el valor de l'identificador

On identificador és el nom de la constant o macro que es defineix, i el valor és el valor amb el qual s'ha de substituir quan es compila el codi.





Exemple de la directiva #define

A continuació es mostra un exemple que explica com es pot utilitzar la directiva #define al codi C++:

#inclou

#definir PI 3.14159

#definir QUADRAT(x) ((x) * (x))

int principal ( ) {

doble radi = 5.0 ;

doble zona = Pi * QUADRAT ( radi ) ;

std :: cout << 'Àrea:' << zona << std :: endl ;

tornar 0 ;

}

En aquest exemple, definim dues constants mitjançant la directiva #define: PI, que representa la constant matemàtica pi, i SQUARE, que és una macro que calcula el quadrat d'un valor determinat. A continuació, utilitzem aquestes constants al nostre codi per calcular l'àrea d'un cercle amb un radi determinat.



Diferència entre #definir i const

Una pregunta habitual que sorgeix quan es parla de la directiva #define és com es diferencia de l'ús de variables const en C++. Tot i que ambdós enfocaments us permeten definir constants que es poden utilitzar al llarg del vostre codi, hi ha algunes diferències clau entre ells.

Una diferència important entre #definir i const és que #define és una directiva de preprocessador, mentre que const és una paraula clau que forma part del propi llenguatge C++. Això vol dir que les constants definides amb #define es substitueixen pels seus valors abans de compilar el codi, mentre que les variables const les gestiona el propi compilador.

Una altra diferència clau entre #define i const és que les variables const tenen un tipus específic, mentre que les constants definides amb #define no. Això vol dir que podeu utilitzar variables const en llocs on es requereix un tipus específic, mentre que les constants definides amb #define poden no funcionar sempre en aquestes situacions.

Conclusió

La directiva #define és una directiva de preprocessador que s'utilitza per definir constants o macros. Ens permet definir noms o valors simbòlics que es substitueixen al llarg del codi abans que tingui lloc el procés de compilació real. Llegiu més sobre la directiva #define en C++ en aquest article.