Conteúdo do curso

0h36m

Programação moderna em C - Aula 0: Preparando o ambiente

Na aula 0 do nosso curso de C apresentamos como será o curso e também mostramos como o ambiente deve ser configurado para acompanhar as aulas.

Já publicamos também a Aula 1: A função main() https://www.youtube.com/watch?v=8Qm5K0GTD3s - não deixe de assistir!

Dúvidas? Poste nos comentários!

-Conteúdo:
Fernando Mercês (@MercesFernando)

-Revisão técnica:
Leonardo Sena (@slayer_owner)
Otávio Augusto (@otavioarj)

-Edição e capa:
Paulo Arruzo (@pauloarruzzo)

0h34m

Programação moderna em C - Aula 1: Funções main() e printf()

Na primeira aula, começamos do começo: a função main. Concentramos esta aula na explicação do esqueleto de um programa em C.

Esqueceu de prepara o ambiente? Dá uma olhada na Aula 0: Preparando o Ambiente https://www.youtube.com/watch?v=oZeezrNHxVo - não deixe de assistir!

Dúvidas? Poste nos comentários!

-Conteúdo:
Fernando Mercês (@MercesFernando)

-Revisão técnica:
Leonardo Sena (@slayer_owner)
Otávio Augusto (@otavioarj)

-Edição e capa:
Paulo Arruzo (@pauloarruzzo)

0h31m

Programação moderna em C - Aula 2: Variáveis booleanas e do tipo char

Na segunda aula, começamos o assunto de variáveis, com exemplos de variáveis do tipo char e bool, além de ver como elas funcionam e aferir seus tamanhos com sizeof e tipos. Apresentamos também nosso novo repositório no Github!

Dúvidas? Poste nos comentários!

-Correções:
O correto é usar %zu ao imprimir o resultado do sizeof ou qualquer outro valor do tipo size_t.

-Repositório do Github
https://github.com/mentebinaria/prog_moderna_c

-Vídeo sobre o bc
https://www.youtube.com/watch?v=vLhABLeb11o

-Vídeo sobre a tabela ASCII
https://www.youtube.com/edit?o=U&video_id=IN9ElO90uLc

-Conteúdo:
Fernando Mercês (@MercesFernando)

-Revisão técnica (nos comentários!):
Frederico Pissara (github.com/fredericopissarra)
Leonardo Sena (@slayer_owner)
Otávio Augusto (@otavioarj)

-Edição e capa:
Paulo Arruzo (@pauloarruzzo)

0h33m

Programação moderna em C - Aula 3: Variáveis do tipo int

Nesta aula falamos sobre as variáveis do tipo inteiro, suas variações (short, long, etc) e limites. Cobrimos também os tipos em stdint.h como int32_t e int8_t, além de falar do modificador "register" para variáveis do tipo inteiro.

Dúvidas? Poste nos comentários!

-Limites
https://www.tutorialspoint.com/c_standard_library/limits_h.htm

-stdint.h
http://pubs.opengroup.org/onlinepubs/009695399/basedefs/stdint.h.html

-Repositório do Github
https://github.com/mentebinaria/prog_moderna_c

-Conteúdo:
Fernando Mercês (@MercesFernando)

-Revisão técnica (nos comentários!):
Frederico Pissara (github.com/fredericopissarra)
Leonardo Sena (@slayer_owner)
Otávio Augusto (@otavioarj)

-Edição e capa:
Paulo Arruzo (@pauloarruzzo)

0h19m

Programac?a?o moderna em C - Aula 4: Varia?veis do tipo float

Ponto flutuante é a representação básica escolhida para trabalhar com números reais em C. Seu padrão é definido pela norma IEEE 754 e nesta aula mostramos seu tamanho e como utilizar. Citamos também o double (precisão dupla) e o long double (precisão quádrupla). Além disso, mostramos como inspecionar um valor em ponto flutuante em memória.

Dúvidas? Poste nos comentários!

-IEEE 754
https://pt.wikipedia.org/wiki/IEEE_754

-Repositório do Github
https://github.com/mentebinaria/prog_moderna_c

-Conteúdo:
Fernando Mercês (@MercesFernando)

-Revisão técnica (nos comentários!):
Frederico Pissara (github.com/fredericopissarra)
Leonardo Sena (@slayer_owner)
Otávio Augusto (@otavioarj)

-Edição e capa:
Paulo Arruzzo (@pauloarruzzo)

0h22m

Programac?a?o moderna em C - Aula 5: Arrays

Chegamos com os vetores (arrays) na aula 5! Aqui cobrimos o que são, a principal diferença entre eles e os famosos ponteiros em C, como são alinhados em memória e falamos também do tamanho de arrays e como calcular seu número de elementos. Vamos treinar?


Dúvidas? Poste nos comentários!


-Repositório do Github

https://github.com/mentebinaria/prog_moderna_c


-Vídeo sobre a tabela ASCII

https://www.youtube.com/watch?v=IN9ElO90uLc


-Conteúdo:

Fernando Mercês (@MercesFernando)


-Revisão técnica (nos comentários!):

Frederico Pissara (github.com/fredericopissarra)

Leonardo Sena (@slayer_owner)

Otávio Augusto (@otavioarj)


-Edição e capa:

Paulo Arruzzo (@pauloarruzzo)

0h24m

Programac?a?o moderna em C - Aula 6: Operadores aritime?ticos

Nesta aula começamos o assunto de operadores falando do de atribuição e também dos aritiméticos. Tanto os operadores unários como os binários são discutidos e mostrados com exemplos. A prioridade de cada um também é discutida.

Dúvidas? Poste nos comentários!

-Repositório do Github
https://github.com/mentebinaria/prog_moderna_c

-Aula citada: Variáveis do tipo float
https://www.youtube.com/watch?v=7J83DWILXSc&t=25s

-Conteúdo:
Fernando Mercês (@MercesFernando)

-Revisão técnica (nos comentários!):
Frederico Pissara (github.com/fredericopissarra)
Leonardo Sena (@slayer_owner)
Otávio Augusto (@otavioarj)

-Edição e capa:
Paulo Arruzo (@pauloarruzzo)

0h23m

Programac?a?o moderna em C - Aula 7: Operadores lo?gicos

Operações lógicas fazem parte da base de qualquer linguagem de programação que se preze. E com C não seria diferente. Nesta aula falamos da conjunção, disjunção e negação e aproveitamos para falar de algumas comparações.

Dúvidas? Poste nos comentários!

-Repositório do Github
https://github.com/mentebinaria/prog_moderna_c

-Conteúdo:
Fernando Mercês (@MercesFernando)

-Revisão técnica (nos comentários!):
Frederico Pissara (github.com/fredericopissarra)
Leonardo Sena (@slayer_owner)
Otávio Augusto (@otavioarj)

-Edição e capa:
Paulo Arruzzo (@pauloarruzzo)

0h21m

Programac?a?o moderna em C - Aula 8: Operadores bit-a-bit

Além dos operadores lógicos, a linguagem C conta com importantes operadores bit-a-bit (conhecidos também como bitwise) mas é preciso entender as diferenças e seus usos mais comuns.

Dúvidas? Poste nos comentários! ;)

-Repositório do Github
https://github.com/mentebinaria/prog_moderna_c

-Conteúdo:
Fernando Mercês (@MercesFernando)

-Revisão técnica (nos comentários!):
Frederico Pissara (github.com/fredericopissarra)
Leonardo Sena (@slayer_owner)
Otávio Augusto (@otavioarj)

-Edição e capa:
Paulo Arruzzo (@pauloarruzzo)

0h32m

Programac?a?o moderna em C - Aula 9: Condicional if

Na nona aula do curso falamos sobre blocos e o condicional "if". Como funcionam suas avaliações, o uso do "else" e como fica tudo isso em Assembly, quando executado pelo processador. Não vai perder né? Ou vai? :-)

Dúvidas? Poste nos comentários! ;)

-Repositório do Github
https://github.com/mentebinaria/prog_moderna_c

-Conteúdo:
Fernando Mercês (@MercesFernando)

-Revisão técnica (nos comentários!):
Frederico Pissara (github.com/fredericopissarra)
Leonardo Sena (@slayer_owner)
Otávio Augusto (@otavioarj)

-Edição e capa:
Paulo Arruzzo (@pauloarruzzo)

0h29m

Programac?a?o moderna em C - Aula 10: Repetições (Parte 1/2)

Chegamos à décima aula do curso, onde introduzimos o conceito de repetições (loops). Na primeira parte, fazemos um loop "na mão" usando goto e o condicional if. Depois explicamos o comando for. E aí, preparado?

Dúvidas? Poste nos comentários! ;)

-Repositório do Github
https://github.com/mentebinaria/prog_moderna_c

-Conteúdo:
Fernando Mercês (@MercesFernando)

-Revisão técnica (nos comentários!):
Frederico Pissara (github.com/fredericopissarra)
Leonardo Sena (@slayer_owner)
Otávio Augusto (@otavioarj)

-Edição e capa:
Paulo Arruzzo (@pauloarruzzo)

0h25m

Programac?a?o moderna em C - Aula 10: Repetições (Parte 2/2)

Chegamos à parte 2 da décima aula do curso, onde introduzimos o conceito de repetições (loops). Na primeira parte, fazemos um loop "na mão" usando goto e o condicional if. Depois explicamos o comando for.

0h26m

Programação Moderna em C - Aula 11: Ponteiros (Parte 1/2)

Na décima primeira aula finalmente introduzimos o conceito de ponteiros. Preparado? É mais fácil do que parece! ;-)

Dúvidas? Poste nos comentários! ;)

-Repositório do Github
https://github.com/mentebinaria/prog_moderna_c

-Conteúdo:
Fernando Mercês (@MercesFernando)

-Revisão técnica (nos comentários!):
Frederico Pissara (github.com/fredericopissarra)
Leonardo Sena (@slayer_owner)
Otávio Augusto (@otavioarj)

-Edição e capa:
Paulo Arruzzo (@pauloarruzzo)

0h41m

Programação moderna em C - Aula 11: Ponteiros (Parte 2/2)

Na segunda parte sobre ponteiros, finalmente explicamos mais dos argumentos da função main(), que utilizam ponteiros, e falamos mais sobre os tamanhos, seu uso e semelhança com arrays. De quebra, falamos do conceito de alocação dinâmica na área de memória chamada heap.

0h27m

Programação moderna em C - Aula 12: Indexação de arrays e ponteiros

Após estudar ponteiros e arrays, preparamos esta aula especial sobre a indexação destes. Aproveitamos também para falar rapidamente sobre enumerações (enums).

0h36m

Programac?a?o moderna em C - Aula 13: Alocac?a?o dina?mica de memo?ria

Chegamos num ponto muito interessante do curso: a alocação dinâmica de memória, solução para a imprevisibilidade de uso da memória mas também causa de muitos bugs em código. Bons estudos!

0h21m

Programac?a?o moderna em C - Aula 14 - Estruturas e Unio?es

Chegou a hora de falar sobre as estruturas (structs) e uniões (unions), recursos extremamente importantes da linguagem C.

0h38m

Programação moderna em C - Aula 15 - Funções

Falamos hoje da função das funções :) Como criá-las e utilizá-las. Do retorno ao argumento, passando pelo protótipo. Também falamos sobre como criar uma função de erro com impressão na saída padrão de erro, como esperado pelo SO.

0h36m

Programac?a?o moderna em C - Aula 16 - Macros

Nesta aula falamos sobre as diretivas de pré-compilação, recurso extremamente característico - e poderoso - da linguagem C. Damos maior foco nas macros, que ditam o nome da aula. :-)

0h31m

Programac?a?o moderna em C - Aula 17 - Escopo e classes de armazenamento

Fechamos a teoria com uma rápida aula sobre escopo de variáveis e classes de armazenamento (extern, static, register), recursos poderosíssimos da linguagem C.