Arquivo do Autor

Diretivas de compilação parte I – Definições

13 de setembro de 2009

Boa tarde Galera,

Esse é meu primeiro post em BluBits e gostaria de parabenizar a essa nossa equipe pela iniciativa desse blog.

Começo conversando sobre uma técnica de programação bastante usada na linguagem C/C++ que são as chamadas de diretivas de compilação. Antes de entrarmos em detalhe precisamos entender como um compilador, em qualquer linguagem que seja  funciona.

O que é compilar?

Compilação é o processo de “tradução” do programa escrito em uma linguagem de programação para um formato no qual o computador entenda. A compilação gera um  arquivo – binário (executável) a partir do código fonte.

Fonte: http://pt.wikibooks.org/wiki/Programar_em_C%2B%2B/Compila%C3%A7%C3%A3o

Um programa em  C/C++ assim com em outras linguagens pode-se utilizar qualquer editor de texto para ‘escrever o código de seu programa’,  porque antes se criar o programa executável,  código passa por algumas etapas, são elas:

– Pré-compilador

-Compilador

-Linker

No assunto das diretivas, iremos abordar o pré-compilador e nos posts seguintes veremos os outros.

O pré-compilador ou pré-processador

O pré-compilador é um programa que examina o programa fonte e executa certas modificações nele, baseado nas diretivas de compilação (ou diretivas do pré-processador). As diretivas de compilação são comandos que não são compilados, sendo dirigidos ao pré-processador, executado pelo compilador antes da execução do processo de compilação propriamente dito.

Portanto, o pré-processador modifica o programa fonte, que ainda não estaria pronto para ser entregue ao compilador. Todas as diretivas de compilação são iniciadas pelo caractere # (sharp). As diretivas podem ser colocadas em qualquer parte do programa, mas não podem ser colocadas na mesma linha que outra diretiva ou instrução.

As principais diretivas de compilação são:

  • #include
  • #define
  • #undef
  • #ifdef
  • #ifndef
  • #if
  • #else
  • #elif
  • #endif

No próximo post irei abordar cada uma das diretivas até mais e uma boa semana…