Programacao
As variáveis em C podem ser declaradas basicamente de 3 maneiras diferentes: dentro de uma função, fora de uma função, e como parâmetro de uma função. Essas 3 maneiras de declaração fazem com que as variáveis sejam chamadas de locais, globais ou parâmetros formais. Variáveis Globais
As variáveis globais existem durante a execução de todo o programa e podem ser utilizadas por qualquer função. Elas devem ser declaradas fora de qualquer função, inclusive do main(), e no início de um programa.
Variáveis Locais
Uma variável local só pode ser utilizada pela função ou bloco que a declarou. Ela não é reconhecida por outras funções e só pode ser usada dentro do bloco de função onde está declarada. Uma variável local é criada quando a função começa a ser executada e destruída no final da execução dessa função. Além disso, no C ANSI, todas as variáveis locais precisam ser declaradas no início da função.
Parâmetros Formais
Os parâmetros formais são variáveis locais de uma função que são inicializadas no momento da chamada da função. Eles também só existem dentro da função onde foram declarados. Embora sejam utilizadas como inicialização da função, elas podem ser utilizadas normalmente como uma variável local dentro do bloco de função onde estão.
Ponteiros
Um ponteiro (= apontador = pointer) é um tipo especial de variável que armazena endereços. Um ponteiro pode ter o valor especial NULL, que não é endereço de lugar algum. A constante NULL está definida no arquivo-interface stdlib e seu valor é 0 na maioria dos computadores.
Se um ponteiro p armazena o endereço de uma variável i, podemos dizer p aponta para i ou p é o endereço de i. Se um ponteiro p tem valor diferente de NULL então *p é o valor do objeto apontado por p. (Não confunda esse uso de * com o operador de multiplicação!) Por exemplo, se i é uma variável e p é igual a &i então dizer *p é o mesmo que dizer i.
Há vários tipos de ponteiros: ponteiros para caracteres, ponteiros para