- O Preprocessor de C � uma etapa separada no processo da compila��o, mas n�o parte do compilador.
- O Preprocessor de C � justo uma ferramenta da substitui��o do texto e n�s consultaremos ao Preprocessor de C como o CPP.
|
O Preprocessor de C
|
- Todas as linhas do preprocessor come�am sempre com #. Esta lista � da p�gina 104 de Weiss. As diretrizes orientadoras incondicionais s�o como segue:
- #define - definir um macro do preprocessor
- #include - introduzir um encabe�amento particular de uma outra lima
- #undef - Undefine um macro do preprocessor
As diretrizes orientadoras condicionais s�o como segue:
- #ifndef - se este macro n�o for definido
- #ifdef - se este macro for definido
- #if - testar se uma condi��o do tempo compilar for verdadeira
- #elif - #else um #if em uma indica��o
- #else - a alternativa para o #if
- #endif - condicional do preprocessor da extremidade
Outras diretrizes orientadoras incluem:
- ## - a fus�o simb�lica, cr�a um �nico s�mbolo de dois uns adjacentes
- # - Stringization, substitui um par�metro macro com uma constante da corda
|
Alguns exemplos do acima s�o dados abaixo:
|
#define MAX_ARRAY_LENGTH 20
|
|
O c�digo acima dir� o CPP para substituir exemplos de MAX_ARRAY_LENGTH com os 20. Para aumentar a legibilidade, usar o #define para constantes.
|
#include <stdio.h>
#include "mystring.h"
|
|
O c�digo acima diz o CPP para come�ar stdio.h das bibliotecas de sistema e para adicionar o texto a esta lima. A linha seguinte diz CPP para come�ar mystring.h do diret�rio local e para adicionar ent�o o texto � lima.
|
#undef MEANING_OF_LIFE
#define MEANING_OF_LIFE 42
|
|
O c�digo acima diz o CPP undefine MEANING_OF_LIFE e define-o para 42.
|
#ifndef IROCK
#define IROCK "You wish!"
#endif
|
|
O c�digo acima diz o CPP para definir IROCK somente se IROCK n�o � definido j�.
|
#ifdef DEBUG
/* Your debugging statements here */
#endif
|
|
Thed acima do c�digo diz o CPP para fazer as seguintes indica��es se ELIMINAR ERROS for definido. Se voc� passar - a bandeira de DDEBUG a GCC, este � �til.
|
Keywords:
The C Preprocessor,
visual studio preprocessor,
c define,
define preprocessor,
if preprocessor,
preprocessor ifdef,
gnu preprocessor,
printf c,
c pointers,
sprintf c,
c tutorial,
c arrays,
fortran preprocessor,
preprocessor string,
c syntax,
c array,
c string,
void c,
preprocessor definition,
the c library
|