Linguagem C - Variáveis

Dezembro 2016


O conceito de variável


Uma variável é um objeto identificado pelo seu nome, podendo conter dados que poderão ser modificados durante a execução do programa. As variáveis em linguagem C são tipadas, ou seja, os dados contidos nelas têm um tipo, então eles são armazenados na memória e ocupam um número de bytes, dependendo do tipo de dados armazenados.

Em linguagem C, os nomes das variáveis podem ser tão longos quanto quisermos, no entanto, o compilador só vai considerar os primeiros 32 caracteres. Além disso, eles devem atender a certos critérios:

  • Um nome de variável deve começar com uma letra (maiúscula ou minúscula) ou um "_" (não com um número)
  • Um nome de variável pode conter letras, dígitos e caracteres "_" (não são permitidos espaços!)
  • Os nomes das variáveis não podem ser os seguintes nomes (são nomes reservados):
    • auto
    • break
    • case, char, const, continue
    • default, do, double
    • else, enum, extern
    • float, for
    • goto
    • if, int
    • long
    • register, return
    • short, signed, sizeof, static, struct, switch
    • typedef
    • union, unsigned
    • void, volatile
    • while



Nome da variável corretoNome da variável incorretoRazão
VariávelNome da Variável comporta espaços
Nome da Variável123Nome da Variável começa com um dígito
nome_da_variáveltoto@mailcity.com caractere especial @
nome_da_variável_123Nome-da- variável signe - proibido
_707goto nome reservado


Os nomes das variáveis são sensíveis às letras maiúsculas/minúsculas (a linguagem C faz a diferença entre um nome em letras maiúsculas e um nome em letras minúsculas), assim sendo, não se esqueça de usar nomes com o mesmo tipo de letra!

A declaração de variáveis


Para poder usar uma variável, é preiso definí-la, ou seja, dar-lhe um nome; mas, sobretudo, um tipo de dado para armazenar, a fim de que um espaço da memória, de acordo com o tipo de dado que ela contenha, lhe seja reservado.

Uma variável é declarada da seguinte maneira:

 tipo Nome_da_variável;


ou se houver diversas variáveis do mesmo tipo:

 tipo Nome_da_variável1, Nome_da_variável2, ...;

Atribuição de um dado a uma variável


Para armazenar dados em uma variável que foi inicializada, devemos fazer uma atribuição, ou seja, especificar o dado que será armazenado em local de memória, que foi reservado durante a inicialização.

Para isso, usamos o operador de atribuição "=":

Nome_da_variável = dado;


Para armazenar o caractere B na variável que chamamos de Caractere, devemos digitar:

 Caractere = 'B';


Isto significa armazenar o valor ASCII do "B" na variável denominada "Caractere". É óbvio que a variável deve ter sido declarada anteriormente, atribuindo-lhe o tipo char:

 char Caractere;

Inicialização de uma variável


A declaração de uma variável só "reserva" um local de memória onde armazenar a variável. Enquanto não se atribuiu um dado, ele contém aquilo que estava anteriormente neste local, conhecido como garbage</ ital> (em português, <ital>lixo</ ital>) .

Podemos, portanto, atribuir um valor inicial à variável durante a sua declaração, isto se chama inicialização:

 <ital>tipo Nome_da_variável = dado;


Por exemplo:

 float Toto = 125.36;

Alcance (visibilidade) das variáveis


Dependendo de onde você declara uma variável, ela será acessível (visível) de qualquer lugar do código, ou apenas em uma porção confinada do mesmo (dentro de uma função, por exemplo), isto é chamado de alcance (ou visibilidade) de uma variável.

Quando uma variável é declarada no próprio código, ou seja, fora de qualquer função ou de qualquer bloco de instrução, ela é acessível de qualquer lugar do código (qualquer função do programa podem usar essa variável). Isso é chamado de variável global .

Quando você declara uma variável dentro de um bloco de instruções (entre chaves), o seu alcance se confina dentro do bloco onde ela foi declarada.

  • Uma variável declarada no início do código, isto é, antes de qualquer bloco de dados será global, então poderemos usá-la a partir de qualquer bloco de instrução.
  • Uma variável declarada dentro de um bloco de instruções (em uma função ou um loop, por exemplo) terá um alcance limitado a este único bloco de instrução, ou seja, não pode ser usada em outro lugar , estamos falando da variável local.

Definição de constantes


Uma constante é uma variável cujo valor é imutável durante a execução de um programa. Em linguagem C, as constantes são definidas graças à diretiva de pré-processador # define, que permite substituir todas as ocorrências da palavra que a seguem, pelo valor imediatamente atrás dela. Por exemplo, a directiva:


#define _Pi 3.1415927


substituirá todos os identificadores « _Pi » (sem as aspas) pelo valor 3.1415927, exceto nas cadeias de caracteres:

resultado = _Pi * sin(a); //-> substituído  
resultado = _Pi+1; //-> substituído  
_Pi = 12; //-> substituído MAS gera um erro  
resultado = _PiPo; //-> não substituído  
printf("pi = _Pi "); //-> não substituído


No entanto, com este método as constantes não são tipadas, então será precisos usar a diretiva # define</ ital> com moderação...
Assim, é preferível utilizar a palavra-chave <ital>const
, que permite declarar constantes tipadas:

const int dez = 10; 


Além disso, isso evita alguns problemas do # define, que faz "localizar-substituir <ital> " textual, sem pensar.


Tradução feita por Lucia Maurity y Nouira


Veja também :
Este documento, intitulado « Linguagem C - Variáveis »a partir de CCM (br.ccm.net) está disponibilizado sob a licença Creative Commons. Você pode copiar, modificar cópias desta página, nas condições estipuladas pela licença, como esta nota aparece claramente.