Variáveis e Tipos de Dados em C++
O que é e para que serve?
Imagine que você está jogando um jogo de computador. Você tem um inventário: uma espada, uma poção de vida, moedas de ouro. Na programação é a mesma coisa — precisamos de algum lugar para armazenar os dados com os quais o programa trabalha. Variáveis são como caixinhas ou gavetas onde você pode colocar um número, uma palavra ou algo mais. Cada gaveta tem um nome (por exemplo, quantidade_de_vidas ou nome_do_heroi), e nela só se pode colocar um tipo específico de coisa: em uma, números; em outra, texto; em uma terceira, sim/não.
Tipos de dados são as regras que dizem: "Nesta caixinha só se pode colocar números inteiros", "E nesta, só palavras". Para que serve isso? Para que o computador não se confunda: se você disse que na caixa há um número, então se pode somar, subtrair e multiplicar números. E se lá há texto, então se pode fazer outras operações: juntar palavras, procurar letras. Sem tipos de dados seria um caos — como se no jogo a espada de repente virasse uma poção, e as moedas começassem a falar.
Para um estudante, isso é importante porque qualquer programa é um trabalho com dados. Quer fazer uma calculadora? Precisa de números. Quer um jogo com diálogos? Precisa de strings (texto). Quer verificar se o jogador passou de fase? Precisa de valores lógicos (verdadeiro/falso). Variáveis e tipos são a base sobre a qual todo o resto é construído.
Sintaxe e exemplos de código
Em C++, você precisa primeiro declarar a variável — dizer ao computador: "Escuta, eu quero uma caixinha com tal nome, e nela vão estar tais dados". Isso é feito assim: primeiro escrevemos o tipo de dado, depois o nome da variável, depois (se necessário) o sinal de igual e o valor.
#include <iostream> // para poder exibir texto na tela
using namespace std; // para não precisar escrever std:: antes de cada palavra
int main() {
// Exemplo 1: número inteiro (int)
int idade = 14; // criamos a variável "idade" do tipo int (número inteiro) e colocamos 14
cout << "Minha idade: " << idade << endl; // exibimos na tela
// Exemplo 2: número de ponto flutuante (double) — para frações
double altura = 1.65; // altura em metros, pode armazenar 1.65
cout << "Minha altura: " << altura << " m" << endl;
// Exemplo 3: texto (string)
string nome = "Alice"; // palavra ou frase entre aspas
cout << "Meu nome é " << nome << endl;
// Exemplo 4: tipo lógico (bool) — apenas true (verdadeiro) ou false (falso)
bool gostaDeProgramacao = true; // true = 1, false = 0
cout << "Gosta de programar? " << gostaDeProgramacao << endl; // exibirá 1 (porque é true)
// Exemplo 5: caractere (char) — uma letra ou dígito entre aspas simples
char primeiraLetra = 'A';
cout << "Primeira letra do nome: " << primeiraLetra << endl;
return 0; // programa terminou com sucesso
}
Observe: em C++, cada expressão termina com ponto e vírgula ;. Se você esquecê-lo, o programa não compilará (o computador não entenderá onde termina o comando).
Outro exemplo — como as variáveis podem ser alteradas:
int pontos = 0; // primeiro 0
pontos = 10; // agora 10
pontos = pontos + 5; // agora 15 (pegamos o valor antigo, somamos 5)
cout << pontos << endl; // exibirá 15
O tipo de dado não pode ser alterado: se você declarou int, depois não pode colocar texto lá. O computador vai reclamar.
Comparação com Python
Em Python, tudo é mais simples: não é necessário especificar o tipo de dado. O Python adivinha sozinho o que você quis dizer. Mas por essa simplicidade, paga-se com velocidade e rigor — em C++, você sabe exatamente quanta memória cada variável ocupa, e o programa funciona mais rápido.
Veja como os mesmos exemplos ficam em Python:
# Python: não precisa escrever int, string, bool — o tipo é determinado automaticamente
idade = 14 # O Python entendeu sozinho que é um número
altura = 1.65 # e este é um número fracionário
nome = "Alice" # isto é uma string
gostaDeProgramacao = True # tipo lógico
primeiraLetra = 'A' # caractere (em Python, isso também é uma string, mas de um caractere)
print("Minha idade:", idade)
print("Minha altura:", altura, "m")
print("Meu nome é", nome)
print("Gosta de programar?", gostaDeProgramacao)
print("Primeira letra do nome:", primeiraLetra)
Notou a diferença? Em C++ escrevemos int idade = 14;, e em Python simplesmente idade = 14. O Python não exige declaração de tipo — ele olha para o valor e decide sozinho. Mas se em C++ você tentar escrever int idade = "Alice";, o compilador dará erro. Em Python, você pode escrever idade = "Alice", e ele não vai reclamar — mas depois, se você tentar somar a idade com um número, o programa quebrará durante a execução.
Outra diferença: em C++, você precisa incluir bibliotecas (por exemplo, #include <iostream> para exibir na tela), enquanto em Python muitas coisas já estão embutidas. Para um estudante, Python é mais fácil para começar, mas C++ proporciona uma compreensão mais profunda de como o computador funciona.
Erros típicos de iniciantes
- Esquecer o ponto e vírgula. Este é o erro mais comum. O compilador dirá: "Erro: esperava-se ponto e vírgula". Basta colocar
;no final de cada comando. - Usar uma variável não declarada. Se você escrever
cout << x;, e a variávelxnão foi declarada, o compilador não entenderá o que é isso. Sempre declare primeiro:int x = 5; - Confundir as aspas. Para strings (vários caracteres) são necessárias aspas duplas:
"Olá". Para um único caractere, aspas simples:'A'. Se confundir, dará erro. - Atribuir um valor de tipo incorreto. Por exemplo,
int a = 3.14;— o compilador pode avisar que a parte fracionária será perdida (será 3).