Variáveis e tipos básicos
Esta aula aborda a declaração e inicialização de variáveis em C, os tipos básicos int, float, double e char, e as convenções de nomenclatura. Inclui exemplos práticos, exercícios com respostas e referências para aprofundamento.
Nesta aula, você aprenderá os fundamentos das variáveis na linguagem C, essenciais para armazenar e manipular dados. Variáveis são espaços na memória que guardam valores de tipos específicos. Dominar a declaração, inicialização e os tipos básicos é o primeiro passo para escrever programas eficientes e corretos.
Vamos explorar os tipos primitivos mais comuns: int para números inteiros, float e double para números de ponto flutuante, e char para caracteres. Também veremos boas práticas na escolha de nomes de variáveis.
Declaração
Em C, toda variável deve ser declarada antes de ser usada. A declaração informa ao compilador o tipo e o nome da variável, permitindo que ele reserve espaço na memória. A sintaxe básica é: tipo nome;. Por exemplo:
int idade;
float altura;
char inicial;
É possível declarar várias variáveis do mesmo tipo em uma única linha, separando-as por vírgulas:
int a, b, c;
Declarar variáveis próximas ao seu uso melhora a legibilidade e evita confusões. Além disso, a partir do padrão C99, você pode declarar variáveis em qualquer lugar do código, não apenas no início de um bloco.
int, float, double, char
int: Armazena números inteiros (sem parte fracionária). Ocupa tipicamente 4 bytes (32 bits) em sistemas modernos, com intervalo de -2.147.483.648 a 2.147.483.647. Exemplo:
int contador = 10;
float: Números de ponto flutuante de precisão simples (aproximadamente 7 dígitos decimais). Ocupa 4 bytes. Deve-se usar o sufixo f para literais float, caso contrário o compilador pode interpretar como double.
float temperatura = 23.5f;
double: Ponto flutuante de precisão dupla (aproximadamente 15 dígitos decimais). Ocupa 8 bytes. É o tipo padrão para literais de ponto flutuante.
double pi = 3.141592653589793;
char: Armazena um único caractere (letra, dígito, símbolo). Ocupa 1 byte. Na prática, armazena um valor inteiro correspondente ao código ASCII do caractere.
char letra = 'A';
É importante escolher o tipo adequado para cada uso: int para contagens, float/double para cálculos científicos, char para caracteres. O uso incorreto pode causar perda de precisão ou estouro de memória.
Inicialização
Inicializar uma variável significa atribuir um valor a ela no momento da declaração. Isso evita que a variável contenha lixo da memória. A sintaxe é: tipo nome = valor;.
int ano = 2025;
float salario = 3500.50f;
char genero = 'M';
Se você declarar uma variável sem inicializá-la, seu valor é indefinido (pode ser qualquer coisa). Usar uma variável não inicializada é um erro comum e perigoso. Exemplo de erro:
int x;
printf("%d", x); // Comportamento indefinido!
Em C, você pode inicializar múltiplas variáveis na mesma linha:
int a = 1, b = 2, c = 3;
Também é possível inicializar um char com um valor inteiro (código ASCII):
char letra = 65; // Equivalente a 'A'
Sempre que possível, inicialize suas variáveis. Isso torna o código mais seguro e legível.
Convenções de nomes
Nomes de variáveis em C devem seguir algumas regras e boas práticas:
- Devem começar com uma letra (a-z, A-Z) ou sublinhado (_).
- Os caracteres seguintes podem ser letras, dígitos ou sublinhados.
- Não podem usar palavras reservadas (como
int,float,if, etc.). - O C é case-sensitive:
idadeeIdadesão diferentes. - Recomenda-se usar nomes descritivos, como
salarioBrutoem vez desb. - Convenções comuns: camelCase (ex.:
meuSalario) ou snake_case (ex.:meu_salario). Escolha um padrão e seja consistente. - Evite sublinhado no início (são reservados para implementações internas).
Exemplos de nomes válidos e inválidos:
int idade; // Válido
float _temp; // Válido, mas não recomendado
double 2x; // Inválido (começa com dígito)
char meu-nome; // Inválido (hífen não permitido)
int if; // Inválido (palavra reservada)
Seguir boas convenções torna o código mais legível e fácil de manter.
Referências
- cppreference.com - Tipos em C
- GNU C Manual - Tipos Inteiros
- GNU C Manual - Tipos de Ponto Flutuante
- GNU C Manual - Tipos de Caractere
- cppreference.com - Declarações
- IBM Documentation - Declaração de Variáveis
Exercícios
- Declare uma variável do tipo
intchamadapopulacaoe inicialize com o valor 1000000. Em seguida, declare uma variávelfloatchamadataxa_crescimentoe inicialize com 0.025. - O que há de errado na declaração:
char 1a_inicial = 'B';? Corrija. - Escreva um programa que declare uma variável
doublechamadaprecoe inicialize com 49.99. Depois, imprima seu valor usandoprintf. - Qual é o valor armazenado na variável
char c = 65;? Explique. - Converta o seguinte trecho de código para usar nomes de variáveis mais descritivos e seguindo boas práticas:
int a = 10; float b = 20.5; char c = 'M';
int populacao = 1000000;
float taxa_crescimento = 0.025f;
char primeira_inicial = 'B';
#include <stdio.h>
int main() {
double preco = 49.99;
printf("Preco: %.2f\n", preco);
return 0;
}
char pode ser tratado como um número inteiro pequeno.
int quantidade = 10;
float temperatura = 20.5f;
char sexo = 'M';
Boas práticas finais
Sempre declare variáveis com o tipo mais adequado para evitar desperdício de memória e perda de precisão. Inicialize todas as variáveis no momento da declaração. Use nomes claros e consistentes. Lembre-se de que o C é uma linguagem de tipagem estática: o tipo de uma variável não muda após a declaração. Pratique bastante para internalizar esses conceitos.