O que é a diretiva #define em C++

O Que E A Diretiva Define Em C



O pré-processamento em C++ refere-se à fase inicial da compilação ou tradução do programa, onde o arquivo do programa fonte é modificado com base nas diretivas do pré-processador. Essas diretivas, denotadas pelo # símbolo, são executados pelo pré-processador e afetam o código-fonte antes que o programa principal seja executado.

As diretivas de pré-processador em C++ são indicadas pelo # (cerquilha) símbolo no início da declaração. Diretivas de pré-processador comuns em C++ incluem inclusão de arquivo e macros definição. Essas diretivas são normalmente colocadas fora da função main() na parte superior do programa C++. Durante o pré-processamento, um arquivo intermediário com o .eu extensão é gerada.

#define Diretiva em C++

Em C++, a diretiva #define é uma diretiva de pré-processador usada para definir constantes ou macros. Ele permite que você defina nomes ou valores simbólicos que são substituídos em todo o código antes que o processo de compilação real ocorra.







Aqui estão alguns dos principais destaques do pré-processador #define



  • Em C++, a diretiva de pré-processador #define é usada para definir macros.
  • Macros em C++ são constantes nomeadas ou expressões declaradas com a diretiva #define.
  • As diretivas #define também são chamadas de diretivas Macro.
  • Quando uma diretiva #define é encontrada em um programa C++, o nome da macro definida é substituído por um valor ou expressão constante durante o estágio inicial de compilação.

Sintaxe da diretiva #define

A sintaxe para usar a diretiva #define é a seguinte:



#define valor do identificador

Onde identificador é o nome da constante ou macro que está sendo definida e valor é o valor que deve ser substituído quando o código for compilado.





Exemplo de diretiva #define

A seguir está um exemplo que explica como a diretiva #define pode ser usada no código C++:

#include

#define PI 3.14159

#define QUADRADO(x) ((x) * (x))

int principal ( ) {

dobro raio = 5.0 ;

dobro área = PI * QUADRADO ( raio ) ;

std :: cout << 'Área: ' << área << std :: fim ;

retornar 0 ;

}

Neste exemplo, definimos duas constantes usando a diretiva #define: PI, que representa a constante matemática pi, e SQUARE, que é uma macro que calcula o quadrado de um determinado valor. Em seguida, usamos essas constantes em nosso código para calcular a área de um círculo com um determinado raio.



Diferença entre #define e const

Uma pergunta comum que surge ao discutir a diretiva #define é como ela difere do uso de variáveis ​​const em C++. Embora ambas as abordagens permitam definir constantes que podem ser usadas em todo o código, existem algumas diferenças importantes entre elas.

Uma grande diferença entre #definir e const é que #define é uma diretiva de pré-processador, enquanto const é uma palavra-chave que faz parte da própria linguagem C++. Isso significa que as constantes definidas usando #define são substituídas por seus valores antes que o código seja compilado, enquanto as variáveis ​​const são tratadas pelo próprio compilador.

Outra diferença fundamental entre #define e const é que as variáveis ​​const têm um tipo específico, enquanto as constantes definidas usando #define não. Isso significa que você pode usar variáveis ​​const em locais onde um tipo específico é necessário, enquanto constantes definidas usando #define podem nem sempre funcionar nessas situações.

Conclusão

A diretiva #define é uma diretiva de pré-processador usada para definir constantes ou macros. Ele nos permite definir nomes ou valores simbólicos que são substituídos em todo o código antes que o processo de compilação real ocorra. Leia mais sobre a diretiva #define em C++ neste artigo.