Programar em C/Variáveis

Origem: Wikilivros, livros abertos por um mundo aberto.

Variáveis[editar | editar código-fonte]

Em um programa, existe a necessidade de se guardar valores na memória, e isso é feito através de variáveis, que podem ser definidas simplificadamente como nomes que se referem a lugares na memória onde são guardados valores. Ao declararmos uma variável, não apenas estamos reservando um espaço de memória, como também estamos associando um nome a ele, o identificador. Ao invés de utilizarmos o endereço da variável na memória, que seria geralmente notado na forma hexadecimal, como por exemplo 0x0012FED4, referimo-nos ao endereço apenas pelo seu nome. Apenas para deixar claro, a própria notação em hexadecimal já é uma simplificação, pois computadores na verdade trabalham com binário.

Em C, para utilizar uma variável, ela deve ser primeiramente declarada, ou seja, devemos requisitar o espaço necessário para essa variável. Após reservar um espaço na memória, o computador irá associar a ele o nome da variável. Se você não declarar uma variável e tentar utilizá-la, o compilador irá avisá-lo disso e não continuará a compilação.

Declarando variáveis[editar | editar código-fonte]

Genericamente, para declarar uma variável, usamos a seguinte instrução:

tipo_da_variável nome_da_variável;

Por exemplo, para declarar uma variável do tipo int com o nome a, podemos escrever

 int a;

É sempre necessário indicar o tipo da variável, pois cada tipo tem um tamanho diferente, ou seja, ocupa mais ou menos espaço na memória do computador. Mais adiante introduziremos os tipos de variável.

Atribuindo valores[editar | editar código-fonte]

Se quisermos associar um valor a uma variável, usamos o operador = (igual):

 a = 5;

Nesse caso, estamos pedindo que o computador guarde o valor 5 no espaço alocado à variável a.

Observação: Apesar de este operador se assemelhar ao igual da matemática, sua função é diferente. Para verificar a igualdade de dois valores, usamos o operador de comparação "==" (dois iguais).

É possível também atribuir um valor a uma variável ao mesmo tempo que ela é declarada, o que é chamado de inicializar a variável. Por exemplo:

 int a = 5;

É possível também declarar mais de uma variável de um mesmo tipo em uma única instrução, separando os nomes por vírgulas. Também é possível inicializar as variáveis dessa maneira:

 int a, b, c, d;
 int e = 5, f = 6;
 int g, h = 2, i = 7, j;

Como o próprio nome já diz, o valor existente numa variável pode ser mudado, da mesma maneira que ele é normalmente atribuído. Se tivermos:

int a;
a = 2;
a = 3;

no final o valor da variável a será 3.

Exemplo de erro[editar | editar código-fonte]

a = 25;

Mesmo sabendo que é um exemplo de erro, escreva o código acima em um arquivo .c e tente compilar para se familiarizar com as mensagens de erro do compilador, assim você saberá o que fazer quando elas ocorrerem.

No exemplo acima não foi declarada a variável a, ao tentar compilar o compilador informa que o símbolo a não foi definido.

Nomes de variáveis[editar | editar código-fonte]

Existem algumas restrições quanto ao nome que podemos dar a variáveis. Essas regras se aplicam também para nomear funções e estruturas.

  • Os nomes de variáveis devem ser únicos no mesmo escopo: não podemos ter duas variáveis com o mesmo nome.
  • O nome pode ser igual ao de outra variável já existente em escopo superior, porém é recomendado fortemente que não se use variáveis iguais sob pena de tornar o código do programa incompreensível ou de difícil análise;
  • O C, assim como muitas outras linguagens de programação, é sensível à utilização de maiúsculas e minúsculas(case sensitive). Portanto, o código a seguir seria válido e geraria três variáveis diferentes:
int nome;
int NOME;
int Nome;
  • Em nomes de variáveis, podemos usar letras maiúsculas ou minúsculas (de A a Z, sem acentos), algarismos arábicos (0-9) e o caractere sublinhado (_), mas o primeiro caractere deve ser uma letra ou o sublinhado.
  • Algumas palavras não podem ser usadas para nomes de variáveis por serem palavras reservadas (palavras que têm significado especial na linguagem).
  • O padrão C atual especifica que nomes de até 31 caracteres devem ser aceitos. Alguns compiladores podem até aceitar nomes maiores que isso, mas não considere isso uma regra e não use nomes tão longos.

Exemplo de variáveis em funcionamento[editar | editar código-fonte]

//TesteDeVariavel.c

#include<stdio.h>

int main()
{
    int a, b, c, d;
    
    a = 1;
    b = a;
    c = a + b;
    
    printf("o valor de c é: %i", c);
    
return 0;
}

No exemplo acima vemos que é atribuído o valor 1 para a variável "a", logo é atribuído o valor de "a" para a variável "b", e em seguida a variável "c" recebe os valores de "a" e "b" somados, resultando em 2.

Isso demonstra que podemos atribuir valores de variáveis existentes em novas variáveis.

Se adicionarmos.

 d = c / a;
    
 printf("o valor de d é: %i", d);

Teremos outro resultado apenas manipulando variáveis sem tocar no valor inicial.