Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Curso Moderno da Linguagem C
Rating: 4.6 out of 5(56 ratings)
216 students

Curso Moderno da Linguagem C

Um Curso de Linguagem C você aprenderá o essencial da linguagem C: Interfaces Gráficas, Banco de Dados, Regex e outros!
Created byMarcos Oliveira
Last updated 2/2024
Portuguese

What you'll learn

  • Conhecimentos essenciais de programação tendo C como base
  • Lógica de programação baseada na Linguagem C
  • Fundamentos essenciais da Linguagem C
  • Exercícios, banco de dados, Regex, Desenvolvimento de Games e outros.

Course content

1 section41 lectures6h 24m total length
  • Apresentação2:17

    Esse curso de C lhe fará criar seus primeiros programas, games e entre outros. Além de oferecer um forte alicerce para evolução de conceitos posteriores.

  • Introdução4:41

    C é uma linguagem de programação compilada de propósito geral, estruturada, imperativa, procedural, padronizada pela Organização Internacional para Padronização (ISO), criada em 1972 por Dennis Ritchie na empresa AT&T Bell Labs para desenvolvimento do sistema operacional Unix (originalmente escrito em Assembly).

  • Como o C funciona5:20

    A CPU de um computador é incapaz de entender C. O conjunto limitado de instruções que uma CPU pode entender diretamente é chamado de código da máquina (ou idioma da máquina ou conjunto de instruções ).

  • Preparando o Ambiente no Windows e Linux e Primeiro Programa em C10:44

    Para se aprender qualquer linguagem de programação, deve-se saber o básico do básico, primeiramente. E em qualquer linguagem, significa imprimir uma frase na tela, no mundo esse procedimento é conhecido como "Olá, mundo!" em inglês ("Hello, World!"), com essa vírgula e com a exclamação no final.

  • Comentando código em C5:38

    Comentários são utilizados para deixar alguma mensagem à outro programador que venha analisar ou estudar o código fonte, ou até mesmo para o próprio desenvolvedor organizar suas anotações e em outras funcionalidades. Quando o interpretador executada o código, ele ignora as linhas ou blocos que estão comentadas .

  • Variáveis e Tipos de Dados17:47

    Variáveis, como o próprio nome já diz, o conteúdo dela pode variar de acordo como você desejar. Elas armazenam valor e guardam esse valor (na memória do computador) para serem usadas na situação em que você solicita. Esta informação está associada com um lugar específico da memória (isso é feito pelo compilador). Cada variável tem um tipo associado.

  • Operadores em C4:57

    Apesar de ainda não usarmos todos os operadores que veremos nesse tópico, é importante falarmos deles logo no início para já termos uma ideia quando usarmos futuramente.

  • Funções12:36

    Quando queremos resolver um problema, em geral tentamos dividi-lo em subproblemas mais simples e relativamente independentes, e resolvemos os problemas mais simples um a um. Uma função cria uma maneira conveniente de encapsular alguns detalhes de "processamento", ou seja, como algum resultado é obtido.

  • Cabeçalhos ou Headers5:28

    O número de cabeçalhos a serem usados em um programa é uma função de muitos fatores. Muitos desses fatores têm mais a ver com o modo como os arquivos são manipulados no sistema do que com o C.

  • Constantes em C6:39

    Em C, além de variáveis, nós podemos usar também números ou caracteres cujos valores não mudam. Eles são chamados de CONSTANTES. Constantes não são associados a lugares na memória. Assim como variáveis, constantes também têm tipos.

  • Conversões de tipos4:36

    É possível converter dados de um tipo em outro. Isso é conhecido como conversão de tipo. Existem dois tipos de conversão de tipo em C .

    1. Conversão implícita

    2. Conversão explícita (também conhecida como Type Casting)

  • Arrays em C17:29

    O array é uma estrutura de dados indexada, que pode armazenar uma determinada quantidade de valores do mesmo tipo. Os dados armazenados em um array são chamados de itens do array.

  • Trabalhando com entrada de usuários9:13

    Em determinadas ocasiões, deseja-se coletar dados dos usuários. Nesse vídeo veremos como fazer isso da forma correta.

  • Condições em C13:24

    Condições são expressões que avaliam um valor booleano - um valor verdadeiro ou falso (true e false são palavras-chave em C, representando os dois valores possíveis de uma expressão ou variável booleana).

  • Loops10:22

    Como a maioria das linguagens de programação, o C fornece estruturas de controle de fluxo para implementar a repetição. Essas estruturas de controle, geralmente conhecidas como loops, nos permitem escrever blocos de código que são executados um determinado número de vezes, ou simplesmente executados até que determinada condição seja atendida.

  • Diretivas10:00

    Elas são processadas antes da compilação do código propriamente dito. De uma maneira geral elas instruem o compilador de algumas ações que devem ser feitas com o código.

  • Primeiro contato com Ponteiros8:27

    Ponteiros são variáveis capaz de armazenar endereços de memória. Usamos ponteiros quando precisamos manipular a memória diretamente.

  • Mais sobre Ponteiros6:40

    Nesse capítulo iremos aprofundar um pouco mais nosso contato com ponteiros!

  • Ponteiro de Função9:59

    Do mesmo jeito que podemos usar ponteiros para tipos de dados, também, e veremos isso com frequência, usar ponteiros para funções.

  • Argumentos via linha de comando8:23

    Em C podemos passar argumentos através da linha de comando para um programa quando ele inicia.

  • Strings e alias para tipos4:46

    Nesse vídeo veremos detalhes sobre strings e "apelidos" para tipos.

  • Estrutura de Dados13:50

    O uso de estruturas (struct) é similar ao uso de classes em outras linguagens de programação. A partir do uso de struct que criou-se o conceito de Linguagem Estruturada em contrapartida à Orientação à Objetos.

  • Funções Recursivas14:21

    O processo no qual uma função chama a si mesma é conhecido como recursão e a função correspondente é chamada de função recursiva.

  • Tipos Enumerados7:27

    C contém alguns tipos de dados integrados. Mas esses tipos nem sempre são suficientes para os tipos de coisas que queremos fazer. Portanto, C contém recursos que permitem aos programadores criar seus próprios tipos de dados. Esses tipos de dados são chamados de tipos de dados definidos pelo usuário .

  • Alocação de Memória7:23

    Em C existem situações que você precisará estender o tamanho do espaço. Suponhamos que você tem um array de tamanho fixo de 5 elementos array[5], mas por algum motivo, isso acontece muito em desenvolvimento de games e sistemas em geral, você precisa aumentar para 10, e não será possível, então você aloca um espaço em outra região da memória que vimos em ponteiros: heap.

  • Trabalhando com arquivos17:52

    Nesse vídeo veremos como trabalhar com arquivos em C de forma profissional, tratando os possíveis erros.

  • Rodando comando via prompt no Windows e Linux com C7:01

    Nesse capítulo veremos como rodar comandos e obter variáveis de ambiente do sistema em C.

  • O tipo Estático e Inline7:18

    Variáveis estáticas(utilizam a palavra-chave static) têm a propriedade de preservar seu valor mesmo depois de saírem de seu escopo! Consequentemente, uma variável estática preserva seu valor no escopo anterior e não é inicializada novamente no novo escopo.

    As funções inline são normalmente vistas como um meio de obter maior desempenho e tempos de execução reduzidos. O custo disso é que o tamanho do binário cresce significativamente, e dependendo do tamanho do código, essa “optimização” possa não ter muito efeito. A melhor maneira de descobrir se deve ou não usar é através de testes.

  • Conhecendo a libc9:59

    A Biblioteca Padrão do C (também conhecida como libc) é uma biblioteca de rotinas padronizada da linguagem de programação C que contém operações comuns como tratamento de entrada/saída e cadeia de caracteres.

  • Expressões Regulares em Linguagem C5:38

    As Expressões Regulares estão em todas as linguagens de programação e em outros utilitários. Uma expressão regular é uma sequência de caracteres usada para pesquisar um padrão. É usado principalmente para correspondência de padrões com strings.

  • Conectando ao MySQL com C no Windows e Linux14:06

    Para conectar ao MySQL com C usaremos o:

    ● MySQL Connector C - Para Linguagem C → MYSQL* connect;

    No Windows veremos tanto como fazer no Visual Studio quanto no VSCode com GCC/g++ MinGW, e você ainda pode usar aVirtualBox ou WSL.

    No caso do Ubuntu, precisaremos de um pacote adicional ao MySQL:

    sudo apt install libmysqlclient-dev

    Para outros sistemas ou distros, use o gerenciador de pacotes nativo para encontrar o nome do pacote correspondente. Vamos ver na prática cada um deles!

  • Rodando comandos SQL em C11:22

    Nesse vídeo aprenderemos como rodar comandos do MySQL via Linguagem C.

  • Como Criar um Gerador e Validador de CPF com a Linguagem C23:18

    O CPF(Cadastro de Pessoas Físicas) da Receita Federal do Brasil recebe um número de inscrição de onze dígitos. Os nove primeiros podem ser aleatórios, mas os dois subsequentes há um cálculo a ser feito.

  • Como Gerar Números para Mega-Sena com Linguagem C11:17

    Nesse vídeo veremos com gerar números para a loteira mais especificamente para mega-sena com a Linguagem C.

  • Interpretando palavras acentuadas no Windows pelo prompt em código C3:35

    Para quem tem problemas em exibir palavras acentuadas no prompt do Windows, nesse vídeo veremos uma solução para esse problema.

  • Interfaces Gráficas no Windows e Linux com C3:23

    Interfaces gráficas em C.

  • Aprenda Desenvolvimento de Games em C com Allegro29:26

    Nesse vídeo veremos como criar Jogos com Allegro e Linguagem C.

  • Ferramentas de compilação: Makefile, CMake, Autotools, Meson, Ninja, Flags,...3:19

    Conheceremos ferramentas essenciais para trabalhar com C.

  • Diferença de versões da Linguagem C4:23

    Diferentes compiladores, como GCC e Microsoft Visual Studio, possuem métodos específicos para identificar a versão C que está sendo usada. Dependendo do seu sistema operacional, pode ser necessário usar sinalizadores ou comandos diferentes para verificar a versão.

  • Recursos adicionais para C7:23

    Nesse vídeo veremos recursos adicionais para C.

  • return 0;2:26

    Obrigado e tenha grande sucesso na sua carreira!

Requirements

  • Não é necessário de conhecimento em programação. Você aprenderá tudo do zero.

Description

C é uma linguagem de programação compilada de propósito geral, estruturada, imperativa, procedural, padronizada pela Organização Internacional para Padronização (ISO), criada em 1972 por Dennis Ritchie na empresa AT&T Bell Labs para desenvolvimento do sistema operacional Unix (originalmente escrito em Assembly).

C tem influenciado muitas outras linguagens de programação, tais como: Java, Javascript, PHP e diversas outras, a mais mais notavelmente é o C++, que originalmente começou como uma extensão para C.

A linguagem C encontra-se na versão/padrão internacional C17 lançada em junho de 2018, substituindo a versão C11.

ANSI C e ISO C

Em 1983, o instituto norte-americano de padrões (ANSI) formou um comité, X3J11, para estabelecer uma especificação do padrão da linguagem C. Após um processo longo e árduo, o padrão foi completo em 1989 e ratificado como ANSI X3.159-1989 "Programming Language C". Esta versão da linguagem é frequentemente referida como ANSI C. Em 1990, o padrão ANSI C, após sofrer umas modificações menores, foi adotado pela Organização Internacional para Padronização (ISO)

Atualmente está sendo desenvolvida a nova revisão do padrão C, que pretende incorporar novas funcionalidades à linguagem. Informalmente denominada C2x, deve ser finalizada em 2023 e se tornar C23.

Depois de conhecer C, deve ser muito fácil aprender qualquer outra linguagem de programação padrão, se você precisar. C é também considerado o auge do entendimento de programação, depois de aprendê-lo, as outras linguagens (principalmente as que usam interpretadores: Python, PHP, JavaScript/Node.js/React ,...) ficarão muito fáceis para você dominar.

Who this course is for:

  • Desenvolvedores iniciantes e intermediários que pretendem aprender e avançar!