Glossário
Todo termo que aparece nas lições está aqui, explicado do jeito mais simples que eu consegui, com exemplo e ligação pros termos parecidos.
programa
Uma lista de instruções que o computador executa de cima pra baixo.
código fonte
O texto que você escreve, antes de virar programa executável.
compilador
O programa que traduz o seu código em algo que o computador executa.
erro de compilação
O compilador achou algo errado e não gerou o programa.
aviso
O compilador achou algo suspeito, mas gerou o programa mesmo assim.
main
A função onde o programa começa. Todo programa em C tem uma.
#include
Traz pro seu programa uma caixa de ferramentas pronta.
biblioteca
Um conjunto de funções prontas que você usa sem precisar escrever.
ponto e vírgula
Fecha cada instrução. Esquecer dele é o erro mais comum em C.
chaves
As `{ }` marcam onde um bloco de código começa e termina.
bloco
Um pedaço de código entre chaves, que roda junto.
comentário
Texto que o compilador ignora, escrito pra humano entender.
printf
Mostra texto e valores na tela.
scanf
Lê um valor digitado no teclado e guarda numa variável.
marcador de formato
O `%d`, `%f`, `%c` e `%s` que dizem o tipo do valor.
entrada padrão
De onde o programa lê quando você usa scanf: o teclado.
saída padrão
Pra onde o programa escreve quando você usa printf: a tela.
return
Encerra a função e devolve um valor pra quem chamou.
variável
Uma caixa com nome, onde o programa guarda um valor.
declarar
Avisar o tipo e o nome de uma variável antes de usar ela.
inicializar
Dar o primeiro valor pra variável, na hora de declarar.
lixo de memória
O valor aleatório que uma variável tem antes de você dar um valor.
atribuição
O sinal `=`, que guarda um valor dentro de uma variável.
tipo
Diz que espécie de valor a variável guarda e quanto espaço ocupa.
int
Tipo para número inteiro, sem casas decimais.
float
Tipo para número com casas decimais.
char
Tipo para um caractere só, escrito entre aspas simples.
string
Um texto, guardado como um vetor de char.
vetor
Várias posições do mesmo tipo, guardadas lado a lado com um nome só.
índice
O número entre colchetes que diz qual posição do vetor você quer.
percorrer
Passar por todas as posições de um vetor, uma de cada vez.
memória
Onde o programa guarda os valores enquanto roda.
endereço
O número que diz onde na memória uma variável está.
divisão inteira
Dividir dois `int` joga fora a parte decimal.
resto (%)
O operador `%` devolve o que sobra de uma divisão.
SIGSEGV
O programa tentou mexer em memória que não é dele e foi morto.
if
Executa um bloco só quando a condição é verdadeira.
else
O caminho que roda quando o if deu falso.
condição
Uma pergunta que só pode dar verdadeiro ou falso.
comparação
Os sinais que comparam dois valores: `==`, `!=`, `<`, `>`, `<=`, `>=`.
operador lógico
Junta condições: `&&` é e, `||` é ou, `!` é não.
operador
Os sinais que fazem contas e comparações.
laço
Um trecho de código que repete enquanto uma condição for verdadeira.
while
Repete enquanto a condição for verdadeira, testando antes de cada volta.
for
Repete contando, com as três partes do laço na mesma linha.
do while
Igual ao while, mas roda uma vez antes de testar.
laço infinito
Um laço que nunca termina, porque a condição nunca fica falsa.
laço dentro de laço
Um for por dentro de outro for. É a base de todo método de ordenação.
escopo
O trecho onde uma variável existe. Fora dele, ela não existe.
função
Um pedaço de código com nome, que recebe valores e pode devolver um.
chamada
O momento em que você usa a função, escrevendo o nome dela com parênteses.
parâmetro
A variável que a função declara pra receber um valor.
argumento
O valor que você passa na hora de chamar a função.
void
Diz que a função não devolve valor nenhum.
ponteiro
Uma variável que guarda o endereço de outra variável.
trocar
A função que troca o valor de duas variáveis usando ponteiro.
ordenação
Colocar os elementos de um vetor em ordem, crescente ou decrescente.
bubble sort
Compara vizinhos e troca. A cada passada, o maior sobe pro fim.
selection sort
Acha a posição do menor e traz pra frente. Uma troca por passada.
insertion sort
Pega um elemento e encaixa no lugar certo, como quem arruma carta na mão.
recursão
Uma função que resolve o problema chamando ela mesma com uma versão menor dele.
caso base
A condição onde a recursão para e devolve uma resposta direta.
caso recursivo
A parte que chama a própria função com um problema menor.
pilha de chamadas
A fila de funções que estão esperando a de dentro terminar.