As linguagens C e C++: qual a diferença entre elas?

As linguagens C e C++: qual a diferença entre elas?
Larissa Gabriela
Larissa Gabriela

Compartilhe

Quando mergulhamos no mundo da programação temos contato com diversas linguagens.

Entre as linguagens de programação mais comuns, as que mais se destacam são o C e o C++.

Nesse ponto, pode surgir a dúvida: Qual a diferença entre elas?

Confira neste artigo o que é C++ e C, qual a diferença entre C/C ++ e onde utilizar cada um.

C: o que é?

A linguagem de programação C é descrita como a linguagem mãe. Isso porque diversas outras linguagens utilizadas hoje, como PHP, Java, C# e o C++, surgiram utilizando C como base.

Ela foi criada em 1972 por Dennis Ritchie, com um dos objetivos de criar sistemas operacionais.

É por isso que os sistemas baseados no Unix utilizam essa linguagem como a principal. Um exemplo de código em C é:

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    printf("Olá Mundo!\n");
    return 0;
}
Banner da Escola de Programação: Matricula-se na escola de Programação. Junte-se a uma comunidade de mais de 500 mil estudantes. Na Alura você tem acesso a todos os cursos em uma única assinatura; tem novos lançamentos a cada semana; desafios práticos. Clique e saiba mais!

C++: o que é?

A linguagem C++ foi desenvolvida cerca de 8 anos depois, em 1980, por Bjarne Stroustrup.

Nessa época, o C++ ainda era chamado de “C with Classes”. Em 1982 ele passou a ser o C++ como conhecemos.

Dessa forma, um “Olá mundo” nessa linguagem ficaria da seguinte forma:

#include <iostream>

int main()
{
    std::cout << "Olá, Mundo!" << std::endl;
}

Para entendermos melhor a linguagem de programação C, além da diferença entre C e C++, é importante saber o que é Programação Orientada a Objetos, conceito que veremos a seguir.

Programação orientada a objetos (POO)

Esse conceito é bastante extenso, por isso, recomendamos a leitura do artigo completo sobre o assunto: POO — o que é programação orientada a objetos?, para quem deseja entender em detalhes como funciona a POO.

A Programação orientada a objetos é um paradigma de desenvolvimento bastante utilizado atualmente.

Diversas linguagens, como Java e Python, suportam essa aplicação.

Dois paradigmas de desenvolvimento bastante conhecidos são o procedural e o multiparadigma.

Na Programação com o paradigma procedural, também chamada programação estruturada, contamos com três tipos básicos de estrutura: sequências, condições e repetições.

Já na Programação orientada a objetos dois novos conceitos são utilizados: classes e objetos.

Esse tipo de programação faz tudo o que a programação estruturada faz. Entretanto, ela aproxima o manuseio de estruturas de um programa ao manuseio de coisas do mundo real.

Representação do que seria classe e objeto comparando com coisas do mundo real

Mas, afinal, qual a diferença entre o C e o C++?

A diferença entre essas linguagens envolve a extensão, a sintaxe, as bibliotecas, seus objetivos e os paradigmas. Mas essa última diferença é a principal.

Enquanto o paradigma do C é procedural, o C++ é o multi-paradigma, onde podemos utilizar os mesmos recursos que o C, mas também temos a possibilidade de implementar a orientação a objetos.

Abaixo podemos ver trechos de códigos para os dois tipos de paradigmas:

  • Paradigma procedural:
#include <stdio.h>

int main() {
    int result;
    int num = 2;
    for(int mult = 1; mult <= 10; mult++){        
        result = num * mult;
        printf("\n%d x %d = %d\n", num, mult, result);
    }
}
  • Multi-paradigma:
#include <iostream.h>

class veiculo {

    private:
    char* nome;
    int peso;
    int potencia;

    public:
    veiculo(char* n,int p,int h);
    void altera_potencia(int en);
    int retorna_hp(void);
    void altera_peso(int en);
    int retorna_peso(void);

};

Então, por que ainda utilizar o C?

É comum, depois de entendermos a diferença entre as duas linguagens, pensarmos que o C não será mais utilizado e o C++ irá substituí-lo.

Mas isso não é verdade. O C ainda recebe atualizações e é utilizado em diversas aplicações, como sistemas operacionais, jogos e sistemas de automação.

Isso se deve a diversos fatores, entre eles, a possibilidade de ser compilado em praticamente qualquer arquitetura, tendo uma Interface Binária do Aplicativo estável para esses ambientes.

Conclusão

Vimos que tanto a linguagem de programação C++ quanto a C são importantes e ainda são muito utilizadas. As aplicações são diversas e cada uma delas costuma ter uma finalidade diferente.

Caso queira entender ainda mais sobre C — linguagem de programação poderosa, leia também:

Larissa Gabriela
Larissa Gabriela

Atuo como Instrutora da escola de programação na Alura, com foco em C#/.NET. Busco aprender cada vez mais e através dos meus conhecimentos auxiliar as pessoas a mergulhar no mundo da tecnologia. Técnica em telecomunicações pelo CEFET/RJ e graduanda em Física Médica pela UFRJ, estou no mundo da programação desde 2015. Nas horas vagas adoro jogar FPS e ver streams.

Veja outros artigos sobre Programação