Categoria: Linguagem C

C é a linguagem que sustenta a computação moderna: sistemas operacionais, bancos de dados, interpretadores de outras linguagens e quase todo sistema embarcado. Trabalha perto do hardware, com controle explícito da memória através de ponteiros — o que exige disciplina, mas ensina como o computador realmente funciona por baixo das abstrações.

Linguagem C

Ponteiros para ponteiros

Esta aula explora ponteiros para ponteiros em C, também conhecidos como dupla indireção. Você aprenderá a sintaxe, os principais casos de uso (como matrizes dinâmicas e parâmetros de funções) e os cuidados necessários para evitar erros comuns.

✓ Lido
Linguagem C

Arrays multidimensionais

Esta aula aborda arrays multidimensionais em C, com foco em matrizes, acesso a elementos, organização na memória (row-major) e passagem para funções. Inclui exemplos práticos e exercícios para fixação.

✓ Lido
Linguagem C

Ponteiros void e genéricos

Esta aula aborda ponteiros void (void*) em C, que permitem criar funções e estruturas genéricas. Serão explicados o conceito de void*, casting, principais casos de uso (como funções de comparação genérica) e cuidados importantes para evitar erros de tipo.

✓ Lido
Linguagem C

Strings em C

Esta aula aborda strings em C, que são arrays de caracteres terminados pelo caractere nulo '\0'. Você aprenderá como declarar, inicializar e manipular strings, além dos cuidados necessários para evitar erros comuns como estouro de buffer.

✓ Lido
Linguagem C

Funções de string (string.h)

Esta aula aborda as principais funções da biblioteca string.h em C, como strlen, strcpy, strcat e strcmp, além de suas versões mais seguras (strncpy, strncat, strncmp). Também discute o problema de buffer overflow e boas práticas para manipulação de strings.

✓ Lido
Linguagem C

Modelo de memória

Esta aula aborda o modelo de memória em C, explicando a diferença entre stack e heap, os segmentos de código, dados e BSS, e como endereços de memória são organizados. O aluno aprenderá a estrutura básica da memória de um programa C, fundamental para entender alocação dinâmica e gerenciamento de recursos.

✓ Lido
Linguagem C

Alocação dinâmica: malloc e free

Nesta aula, você aprenderá a utilizar as funções malloc e free para alocar e liberar memória dinamicamente em C. Abordaremos o uso de sizeof, a verificação de ponteiros NULL e como evitar vazamentos de memória, com exemplos práticos e boas práticas.

✓ Lido
Linguagem C

calloc e realloc

Esta aula aborda as funções calloc e realloc da biblioteca padrão C, explicando como alocar memória zerada e redimensionar blocos de memória dinamicamente. Inclui exemplos práticos, cuidados essenciais para evitar vazamentos e erros, e exercícios com respostas.

✓ Lido
Linguagem C

Vazamentos e erros de memória

Esta aula aborda os principais erros de gerenciamento de memória em C: memory leaks, double free e use-after-free, com exemplos práticos e explicações detalhadas. Também é apresentada uma visão geral do Valgrind, ferramenta essencial para detectar esses problemas. Ao final, o aluno terá exercícios para consolidar o aprendizado.

✓ Lido
Linguagem C

Arrays dinâmicos

Nesta aula, você aprenderá a criar e gerenciar arrays dinâmicos em C utilizando alocação na heap, redimensionamento com realloc, matrizes dinâmicas e liberação de memória. O conteúdo aborda desde a alocação com malloc até boas práticas para evitar vazamentos de memória.

✓ Lido