See the C
  • Intro
    • Prefácio
      • A Jornada
      • A organização dos estudos
      • Guia de contribuições
  • Capítulo 1: Basic
    • Introdução a Linguagem C
      • Uma Jornada pela Computação com bit e byte
      • Fluxograma
      • Algoritmos?
      • Ciclo de Desenvolvimento
      • Compreendendo variáveis
      • Tipos de dados
      • Comentários
      • Ordem de precedência dos operadores
      • Operadores aritméticos
      • Operadores relacionais e lógicos
      • Operadores de atribuição Compostos
      • Função
      • Especificadores de formato
    • Capítulo 1: Exercícios
      • Operações Matemáticas Simples
      • Cálculo de Média Aritmética
      • Conversão de Temperatura
      • Entrada e Saída de dados Simples
      • Cálculo de Percentual de Votos em uma Eleição Municipal
      • Cálculo de Novo Salário com Reajuste
      • Jogo de Adivinhação Simples
  • Capítulo 1: RE
    • Operações Matemáticas Simples
    • Cálculo de Média Aritmética
  • Capítulo 2: Control Flow
    • Estruturas condicionais
      • Entender loops
  • Capítulo 2: Exercícios
    • Calculadora de Notas
    • Verificação de Paridade de um Número
    • Conversor de Temperatura Inteligente
    • Dias da Semana
    • Calculadora Simples
    • Conversor de Unidades
  • Capítulo 3: Functions
    • Funções - Uma abordagem abrangente
Fornecido por GitBook
Nesta página
  • O que é a linguagem C?
  • Eficiência e Desempenho
  • Portabilidade
  • Simplicidade e Flexibilidade
  • A "mãe" moderna
  • Linguagens influênciadas pelo C
  • Softwares populares feitos em C/C++
  • Sistemas operacionais baseados em C
  • TIOBE Index for January 2025
Editar no GitHub
  1. Capítulo 1: Basic

Introdução a Linguagem C

O que é a linguagem C?

C é uma linguagem poderosa e flexível, ideal para desenvolvimento de baixo nível e aplicações que exigem desempenho optimizado. Embora exigente em termos de gerenciamento de memória e complexidade, seu aprendizado é fundamental para quem deseja entender profundamente como o computador e a programação funcionam.

Desenvolvida por Dennis Ritchie no início dos anos 1970 na AT&T Bell Labs. Ela é amplamente utilizada devido à sua eficiência, flexibilidade e controle detalhado sobre o hardware, C é considerada uma linguagem de baixo nível em relação a outras linguagens modernas, o que a torna ideal para o desenvolvimento de sistemas, aplicativos e software que exigem alta performance.

Eficiência e Desempenho

A linguagem C é uma linguagem de baixo nível, o que significa que ela oferece controle direto sobre o hardware e a memória tornando tudo mais proximo e direito. O código escrito em C é altamente otimizado e rápido, tornando-o ideal para aplicações que exigem alto desempenho, como sistemas operacionais, jogos e sistemas embarcados.

Portabilidade

C é sim uma linguagem multiplataforma, o que significa que programas escritos em C podem ser compilados e executados em diferentes sistemas operacionais (Windows, Linux, macOS, etc.) e arquiteturas de hardware com poucas ou nenhuma modificação. Isso é possível graças aos padrões de linguagem e a disponibilidade de compiladores para diversas plataformas.

Simplicidade e Flexibilidade

O C possui uma sintaxe bastante simples e um conjunto reduzido de palavras-chave, o que facilita o aprendizado e o uso. Ao mesmo tempo, a linguagem é extremamente poderosa, permitindo a criação de estruturas complexas

A "mãe" moderna

Popularmente a linguagem C é chamada de "mãe" das linguagens modernas porque influenciou muitas linguagens que vieram depois. Pela eficiencia, flexíbilidade e impacto enorme no desenvolvimento de software. Abaixo algumas linguagens que foram diretamente derivadas ou fortemente influenciadas por C:

Linguagens influênciadas pelo C

  1. C++

Usam a sintaxe e conceitos de C como base:

  • O que é? Uma extensão do C com suporte a programação orientada a objetos, criada por Bjarne Stroustrup nos anos 1980.

  • Usos: Jogos, sistemas operacionais, softwares gráficos, e aplicações de alto desempenho.

  • Diferença para C: Adiciona classes, herança, polimorfismo e outras abstrações de alto nível.

  1. Objective-C

  • O que é? Uma extensão do C que adiciona elementos de programação orientada a objetos, usada principalmente por Apple.

  • Usos: Desenvolvimento de aplicativos para macOS e iOS (antes do Swift).

  • Diferença para C: Adiciona mensagens e interfaces, inspirado em Smalltalk.

  1. C# (C-Sharp)

  • O que é? Desenvolvida pela Microsoft, baseada em C/C++, mas com foco em programação orientada a objetos e produtividade.

  • Usos: Desenvolvimento para Windows, web (ASP.NET) e jogos (Unity).

  • Diferença para C: Sintaxe moderna, garbage collector e integração com o .NET Framework.

  1. Java

  • O que é? Inspirada pela sintaxe do C e do C++, mas é 100% orientada a objetos e roda em uma Máquina Virtual Java (JVM).

  • Usos: Desenvolvimento web, aplicativos empresariais, Android, entre outros.

  • Diferença para C: Sem ponteiros e com gerenciamento automático de memória.

  1. Python

  • O que é? Embora seja de alto nível, sua implementação inicial foi feita em C (CPython) e sua sintaxe foi levemente inspirada por C.

  • Usos: Ciência de dados, inteligência artificial, automação, e desenvolvimento web.

  • Diferença para C: Sintaxe mais simples, tipagem dinâmica e foco na legibilidade.

  1. Rust

  • O que é? Uma linguagem moderna inspirada por C e C++, mas com foco em segurança de memória e performance.

  • Usos: Sistemas operacionais, webassembly e aplicações de alto desempenho.

  • Diferença para C: Sem ponteiros inseguros e com um sistema de "ownership" para evitar erros de memória.


Softwares populares feitos em C/C++


Sistemas operacionais baseados em C

Além das linguagens, o C é a base para muitos sistemas operacionais, como:

  • UNIX: Originalmente escrito em C.

  • Linux: O kernel é escrito em C.

  • Android:

    • O Android é construído sobre o, que é escrito predominantemente em C.

    • O kernel é responsável por:

      • Gerenciar hardware (CPU, memória, armazenamento, etc.).

      • Controlar processos, segurança e drivers.

    • Como o Android utiliza o Linux, toda a interação de depende diretamente de C.

  • Windows: Grandes partes foram implementadas em C.



✏️ Actividades de aprendizagem

O que é entendes por Hardware e Software?

O que entendes por multiplataforma e quais OS conheces?

O que é a sintaxe de uma linguagem de programção?

AnteriorGuia de contribuiçõesPróximoUma Jornada pela Computação com bit e byte

Atualizado há 2 meses

Popular reprodutor de musicas e vídeos, a escrita em C

- Outro player famoso baseado em C.

Usa C e C++ para o motor Blink.

Biblioteca de criptografia amplamente usada, escrita em C.

Ferramenta de análise de tráfego de rede, escrita em C.

Originalmente escrito em C e C++.

VLC Media Player
MPlayer
Google Chrome & Chromium -
OpenSSL
Wireshark
MySQL
TIOBE Index for January 2025