Aula 02 - Tipos de Dados e Variáveis 📦
O que é uma Variável?
- Um espaço reservado na memória RAM
- Possui um Tipo, um Nome e um Valor
Tipos Primitivos
int: Números inteiros
float / double: Números reais
char: Caractere único
bool: Verdadeiro ou Falso
Tabela de Tamanhos (Típico)
| Tipo |
Tamanho |
Faixa |
| char |
1 byte |
-128 a 127 |
| int |
4 bytes |
~2 bilhões |
| double |
8 bytes |
Alta precisão |
Modificadores
signed / unsigned
short / long
- Exemplo:
unsigned int (apenas positivos)
Declaração e Inicialização
int idade = 20; // Inicialização direta
int ano(2023); // Inicialização funcional
int pontos{100}; // Brace initialization (C++11)
Por que usar { } ?
- Evita conversões perigosas (narrowing conversion)
- Exemplo:
int x{3.14}; gera erro de compilação!
Nomenclatura (Boas Práticas)
- Use camelCase para variáveis
- Nomes significativos (
idade em vez de i)
- Evite abreviações obscuras
Entrada de Dados (std::cin)
int numero;
std::cout << "Digite um valor: ";
std::cin >> numero;
- >> é o operador de extração
O Problema do Espaço em Branco
std::cin para no primeiro espaço
- Para frases, use
std::getline(std::cin, variavel)
Constantes
- Use
const para valores que não mudam
const double PI = 3.14159;
Constexpr (C++11)
- Avaliado em tempo de compilação
- Muito mais eficiente para cálculos fixos
Auto (Dedução de Tipo)
auto x = 10; // x é int
auto y = 3.14; // y é double
- Facilita tipos complexos
Booleans
true (1) e false (0)
- Úteis para sinalizações (flags)
Caracteres (char)
- Usa aspas simples:
'A'
- Baseado na tabela ASCII
Inteiros Grandes
long long int para números astronômicos
Debugging: Visualizar Memória
std::cout << "Endereço: " << &idade << std::endl;
std::cout << "Tamanho: " << sizeof(idade) << " bytes" << std::endl;
Overflow e Underflow
- O que acontece se passar do limite?
- O valor "dá a volta" (Circular)
Resumo da Aula
- Escolha o tipo correto
- Prefira
{} para inicializar
- Use
const sempre que possível
Exercício Rápido
- Declare uma variável para sua altura e outra para seu peso.
- Calcule algo simples e imprima.
Fim da Aula 02
- Próxima aula: Operadores e Expressões!