O que é C?
C é uma linguagem de programação orientada estrutural ou procedural que é independente da máquina e amplamente utilizada em
várias aplicações.
C é a linguagem de programação básica que pode ser usada para desenvolver desde sistemas operacionais (como Windows) até
programas complexos como banco de dados Oracle, Git, interpretador Python e muitos mais.
A linguagem de programação C pode ser chamada de linguagem de programação de Deus, pois forma a base para outras linguagens de programação.
Se conhecermos a linguagem C, podemos aprender facilmente outras linguagens de programação.
A linguagem C foi desenvolvida pelo grande cientista da computação Dennis Ritchie no Bell Laboratories. Ela contém alguns
recursos adicionais que a tornam exclusiva de outras linguagens de programação.
O que é C++?
C++ é uma linguagem de programação de propósito especial desenvolvida por Bjarne Stroustrup na Bell Labs por volta de 1980.
A linguagem C++ é muito semelhante à linguagem C e é tão compatível com C que pode executar 99% dos programas C sem alterar nenhuma
fonte de código.
C++ é uma linguagem de programação orientada a objetos, portanto, é mais segura e bem mais estruturada do que C.
Definição
C é uma linguagem de programação estrutural e não oferece suporte a classes e objetos, enquanto C++ é uma linguagem de programação
orientada a objetos que oferece suporte ao conceito de classes e objetos.
Tipo de linguagem de programação
C suporta a linguagem de programação estrutural em que o código é verificado linha por linha, enquanto C++ é uma linguagem de
programação orientada a objetos que suporta o conceito de classes e objetos.
Desenvolvedor da linguagem
Dennis Ritchie desenvolveu a linguagem C na Bell Laboratories enquanto Bjarne Stroustrup desenvolveu a linguagem C++ na Bell
Labs por volta de 1980.
Subconjunto
C ++ é um superconjunto da linguagem de programação C. C++ pode executar 99% do código C, mas a linguagem C não pode executar
códigos C++.
Tipo de abordagem
C segue a abordagem de cima para baixo, enquanto C++ segue a abordagem de baixo para cima. A abordagem de cima para baixo divide
os módulos principais em tarefas; essas tarefas são divididas em subtarefas e assim por diante. A abordagem bottom-down desenvolve os
módulos de nível inferior primeiro e, em seguida, os módulos de nível seguinte.
Segurança
Em C, os dados podem ser facilmente manipulados por pessoas de fora, uma vez que não suporta o encapsulamento e ocultação de
informações, enquanto C++ é uma linguagem muito segura, ou seja, nenhuma pessoa de fora pode manipular seus dados, uma vez que suporta
encapsulamento e ocultação de dados.
Na linguagem C, funções e dados são as entidades livres e, na linguagem C++, todas as funções e dados são encapsulados na
forma de objetos.
Sobrecarga de função
A sobrecarga de função é um recurso que permite ter mais de uma função com o mesmo nome, mas variando nos parâmetros. C não suporta
sobrecarga de função, enquanto C++ suporta.
Substituição de função
A substituição de função é um recurso que fornece a implementação específica para a função, que já está definida na classe base.
C não oferece suporte para substituição de função, enquanto C++ oferece.
Variáveis de referência
C não oferece suporte às variáveis de referência, enquanto C++ oferece suporte às variáveis de referência.
Palavras-chave
C contém 32 palavras-chave e C++ suporta 52 palavras-chave.
Recurso de namespace
Um namespace é um recurso que agrupa as entidades como classes, objetos e funções sob algum nome específico.
C não contém o recurso de namespace, enquanto C++ oferece suporte ao recurso de namespace que evita as colisões de nomes.
Manipulação de exceção
C não fornece suporte direto para o tratamento de exceções; ela precisa usar funções que suportam o tratamento de exceções.
C++ fornece suporte direto para tratamento de exceção usando um bloco try-catch.
Funções de entrada/saída
Em C, as funções scanf e printf são usadas para operações de entrada e saída,
respectivamente, enquanto em C++, cin e cout são usadas para operações de entrada e saída, respectivamente.
Alocação e desalocação de memória
C suporta as funções calloc() e malloc() para a alocação de memória e a
função free() para a desalocação de memória.
C++ suporta um novo operador para a alocação de memória e operador de exclusão para a desalocação de memória.
Herança
Herança é um recurso que permite que a classe filha reutilize as propriedades da classe pai. A linguagem C não oferece suporte
à herança, enquanto C++ oferece.
Arquivo de cabeçalho
O programa C usa o arquivo de cabeçalho <stdio.h> enquanto o programa C++ usa o arquivo de
cabeçalho <iostream.h>.
Vamos resumir as diferenças acima em uma forma tabular:
Figura 2.1
*****
| |