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

Funções inline e macros de função

Esta aula aborda funções inline e macros de função em C, explicando seus usos, riscos e diferenças. O aluno aprenderá quando utilizar cada recurso para otimizar código e evitar armadilhas comuns.

✓ Lido
Linguagem C

Ponteiros: introdução

Esta aula introduz o conceito de ponteiros em C, explicando o que são, como usar os operadores & e *, como declarar ponteiros e a importância do valor NULL. O conteúdo inclui exemplos práticos de código e exercícios com respostas colapsáveis.

✓ Lido
Linguagem C

while e do-while

Esta aula aborda as estruturas de repetição while e do-while em C, destacando suas diferenças, condições de parada, loops infinitos e quando utilizar cada uma. Inclui exemplos práticos e exercícios para fixação.

✓ Lido
Linguagem C

Aritmética de ponteiros

A aritmética de ponteiros em C permite navegar por arrays e estruturas de dados de forma eficiente, usando operações como incremento, decremento e comparação. A aula aborda como essas operações se relacionam com os tipos dos ponteiros, os cuidados necessários para evitar erros comuns, e fornece exemplos práticos.

✓ Lido
Linguagem C

Ponteiros e funções

Esta aula aborda a integração de ponteiros com funções em C, explicando passagem por referência, alteração de valores e retorno de múltiplos valores via ponteiros. Inclui exemplos práticos e exercícios com respostas.

✓ Lido
Linguagem C

Ponteiros para ponteiros

Esta aula aborda o conceito de ponteiros para ponteiros em C, explicando a dupla indireção, seus usos comuns, exemplos práticos e cuidados necessários. O aluno aprenderá a declarar, atribuir e utilizar ponteiros de ponteiros para manipular dados indiretamente.

✓ Lido
Linguagem C

Ponteiros e const

Nesta aula, exploramos o uso de const com ponteiros em C, abrangendo ponteiro para const, const ponteiro e combinações. Aprendemos como essas declarações afetam a mutabilidade dos dados e do ponteiro, e discutimos boas práticas para escrever código mais seguro e expressivo.

✓ Lido
Linguagem C

Arrays multidimensionais

Esta aula aborda arrays multidimensionais em C, incluindo declaração e inicialização de matrizes, acesso a elementos, organização na memória no formato row-major e passagem de arrays multidimensionais para funções. O conteúdo é prático e progressivo, com exemplos de código e exercícios.

✓ Lido
Linguagem C

Ponteiros void e genéricos

Esta aula aborda os ponteiros void* em C, que permitem criar código genérico ao apontar para qualquer tipo de dado. São explicados os conceitos de casting, casos de uso como funções de comparação genéricas e os cuidados necessários para evitar erros de tipo e acessos inválidos.

✓ Lido
Linguagem C

Strings em C

Nesta aula, exploramos strings em C como arrays de caracteres terminados pelo caractere nulo '\0'. Aprendemos a inicializar strings, a importância do terminador nulo e cuidados essenciais 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: strlen, strcpy, strcat, strcmp e suas variações seguras (strncpy, strncat, strncmp). Também discute o problema do buffer overflow e boas práticas para evitar vulnerabilidades.

✓ Lido
Linguagem C

Arrays e ponteiros na prática

Nesta aula, exploramos a relação entre arrays e ponteiros em C, focando no decay de arrays para ponteiros, as diferenças entre eles e como o operador sizeof se comporta em cada caso. Através de exemplos práticos, você entenderá quando arrays e ponteiros são equivalentes e quando não são.

✓ Lido
Linguagem C

Alocação dinâmica: malloc e free

Nesta aula, você aprenderá sobre alocação dinâmica de memória em C usando as funções malloc e free, incluindo a importância de verificar o retorno NULL e como evitar vazamentos de memória. Através de exemplos práticos, você dominará a gestão manual de memória, essencial para programas eficientes e seguros.

✓ 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, além de apresentar o Valgrind como ferramenta de detecção. São explicados conceitos, causas e consequências, com exemplos práticos de código. Ao final, exercícios e referências aprofundam o aprendizado.

✓ Lido
Linguagem C

calloc e realloc

Esta aula aborda as funções calloc e realloc da biblioteca padrão de C, explicando como alocar memória zerada e redimensionar blocos de memória dinâmica. Inclui exemplos práticos, cuidados importantes e exercícios para fixação.

✓ Lido