====== Definição extern ====== Sintaxe: ''extern [[tipos_dados|tipo_variável]] [[variavel_definicao|nome_variável]]'' ---- Quando o sistema é separado em vários programas, pode-se ter o problema de acesso a certas variáveis globais, pois a definição da mesma pode estar em um programa fonte e é necessário acessar estas variáveis em outro programa fonte. Como na Linguagem C deve-se sempre definir uma variável antes de usá-la, quando ocorrer á situação acima descrita deve ser indicado no programa que irá usar a variável que a mesma está definida em outro programa. Para se fazer isto basta colocar a palavra **''extern''** na frente da definição da variável juntamente com a definição do seu tipo e nome. Feito isto está sendo indicado para o compilador o necessário para que não sejam gerados erros, e indicado que a variável já foi definida em outro arquivo fonte. Vejas o exemplos do programa principal e programa auxiliar: /* programa extern_principal.c */ #include void imprime_soma (void); /* Declaração do protótipo da função. Mesmo que a função não esteja no código fonte, é importante "informar" ao compilador que esta função existe, senão ocorrerá erro na compilação */ int iValor_a; /* Declaração das variáveis públicas, ou seja, elas estarão disponíveis para uso em todo programa */ int iValor_b; int main (void) { int iResultado; printf ("Entre com os valores:"); scanf ("%d %d", &iValor_a, &iValor_b); imprime_soma(); return 0; } /* programa extern_auxiliar.c */ #include extern int iValor_a; /* Declarando que EXISTEM, em outro programa, as variáveis públicas, ou seja, elas estarão disponíveis para uso em todo o programa. */ extern int iValor_b; void imprime_soma(void) { printf ("Soma %d\n", iValor_a + iValor_b); /* uso das variáveis públicas */ return; } --- //[[marcos@laureano.eti.br|Marcos Laureano]] 2008/05/13 17:45//