Programar em C/Pré-processador: diferenças entre revisões
[edição não verificada] | [edição não verificada] |
Conteúdo apagado Conteúdo adicionado
Sem resumo de edição |
Sem resumo de edição |
||
Linha 154:
Se o arquivo ainda não tiver sido incluído, ao chegar na primeira linha do arquivo, o pré-processador não encontrará o símbolo <tt>CABECALHO_H</tt>, e continuará a ler o arquivo, o que lhe fará definir o símbolo. Se tentarmos incluir novamente o arquivo, o pré-processador pulará todo o conteúdo pois o símbolo já foi definido.
==Concatenação==
O preprocessador C oferece duas possibilidades para manipular uma cadeia de caracteres .<br>
A primeira é usando o operador # que permite substituir a grafia de um parâmetro .
<source lang="C">
#include<stdio.h>
int main (void)
{
/* mad equivale a "mad" */
#define String(mad) #mad
printf ( String( Estou aqui ) "\n" );
}
</source>
A segunda é usando o operador ## que serve para concatenar vários parâmetros .<br>
Ex: ban##ana é igual a banana .
<source lang="C">
#include<stdio.h>
int main (void)
{
int teste = 1000 ;
#define CONCAT(x, y) x##y
/* igual a "tes" + "te" */
printf (" %i \n", CONCAT ( tes, te ) );
}
</source>
[[Categoria:Programar em C|P]]
|