O que é a linguagem C

Publicado por Daniel Gurgel Pinheiro em 24/10/2006

[ Hits: 29.112 ]

 


O que é a linguagem C



Após analisar diversas literaturas distribuídas na rede mundial de computadores e de participar de alguns cursos relacionados à linguagem de programação C/C++, resolvi escrever esse artigo para tentar a classificar a linguagem C/C++ como uma linguagem de nível intermediário.

Histórico da linguagem C/C++


A linguagem C foi criada por Dennis Ritchie, em 1972, no centro de Pesquisas da Bell Laboratories. Sua primeira utilização importante foi a reescrita do Sistema Operacional UNIX, que até então era escrito em assembly.

Em meados de 1970 o UNIX saiu do laboratório para ser liberado para as universidades. Foi o suficiente para que o sucesso da linguagem atingisse proporções tais que, por volta de 1980, já existiam várias versões de compiladores C oferecidas por várias empresas, não sendo mais restritas apenas ao ambiente UNIX, porém compatíveis com vários outros sistemas operacionais.

O que é linguagem de baixo e alto nível


Linguagem de baixo nível é o código que o computador executa diretamente. É composta de 0´s e 1´s e conhecida como linguagem binária.

Uma segunda classificação, também muito utilizada, é a que se relaciona com o nível de abstração que o usuário utiliza para escrever programas na linguagem. Baseando-nos neste critério as linguagens podem ser procedimentais ou não-procedimentais.

Linguagem de alto nível é uma linguagem que se aproxima mais da linguagem utilizada pelo ser humano. Exemplos típicos são Pascal, COBOL, C e SQL.

É importante lembrar que o Delphi e o Visual Basic são ambientes de programação e não linguagens no sentido estrito da definição. O Delphi tem por linguagem base um extensão do Pascal chamada Pascal Orientado a Objetos ou Object-Pascal e o Visual Basic tem por base uma linguagem que é um extensão do Basic de nome Visual Basic.

Afinal, o que é C/C++?


Segundo Herbert Schildt (2004 / p-04), C é freqüentemente chamada de linguagem de médio nível porque combina elementos de linguagem de alto nível com a funcionalidade da linguagem assembly.

Como uma linguagem de nível médio, C permite a manipulação de bits, bytes e endereços - os elementos básicos com os quais o computador funciona. Um código escrito em C é muito portável. Portabilidade significa que é possível adaptar um software escrito para um tipo de computador para outro. Por exemplo, você pode facilmente converter um programa escrito em DOS de tal forma a executar sob Windows, então esse programa é portável.

Já Dennis M. Ritchie (1986/ p-03) considera a sua língua como uma linguagem de relativo "baixo nível".

Conclusão


Diante do exposto e das considerações de grandes estudiosos como Herbert Schildt do criador Dennis M. Ritchie dessa linguagem de programação, que na minha humilde opinião pode ser chamada de a linguagem de programação, devemos ter cuidados em classificá-la. Assim C/C++ é uma linguagem de nível médio.

Bibliografia


Schildt, Herbert - C: the complete reference - 2004 - 3ªED - 2004 - Person;

Brian W. Kernighan, Dennis M. Ritchie - C a linguagem de programação - 1986 - editora campus.

Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

Trabalhando com Firewalld no CentOS 7

Aumentando área de SWAP sem boot ou reinstalação em LVM

Docker Capabilities

Rápida instalação do Wordpress no Ubuntu

Entenda o uso de profiles no Funtoo

  

Comentários
[1] Comentário enviado por flipe em 24/10/2006 - 14:35h

uma curiosidade minha, em que linguagem o C e o C++ são escritos?

valeu.

[2] Comentário enviado por joukim em 24/10/2006 - 14:48h

Em processadores de texto, flipe.

Calma, não estou zoando não. Estou esclarecendo. Por linguagem, entende-se sua descrição, a forma como funciona. Nesse caso, C e C++ são descritos em normas ISO que os padronizaram. Além disso tem os textos dos criadores dessas linguagens. Ou seja, qualquer linguagem é escrita usando um sistema de processamento de textos, seja lá qual for ele.

A sua pergunta na verdade deveria ser: "em qual linguagem os compiladores das linguagens C e C++ são escritos?".

Nesse caso, depende de qual compilador! Tem vários, e a grande maioria dos compiladores (inclusive de outras linguagens) é feito diretamente em C. Para isso, utilizam ferramentas auxiliares, como Lex, YACC e Bison. Uma certa parte é feita em C++. Não conheço nenhum compilador que seja feito inteiramente em linguagem de montagem (Assembly).

[3] Comentário enviado por poleto em 24/10/2006 - 18:57h

dgpinheiro,

Só uma observação. C é uma linguagem e C++ é outra. C é uma linguagem estruturada, enquando C++ é uma linguagem orientada a objetos. C++ foi desenvolvida por Bjarne Stroustrup em 1983. Apesar de a maioria dos compiladores C compilarem tanto C como C++, associar as duas como sendo uma coisa só é errado.

[]'s
Poleto

[4] Comentário enviado por dgpinheiro em 26/10/2006 - 17:47h

Poleto,

Cara!! Obrigado, concordo com vc, esta é uma dúvida muito freqüente e encontramos em vários livros C/C++. O seu comentário meu deu motivação para outra dica.

Valeu!!!

[5] Comentário enviado por mrclag em 08/04/2007 - 16:00h

Desconheço o livro C: the complete reference - 2004 - 3ªED - 2004 - Person da bibliografia. Provavel data errada:

C: the complete reference - 3ªED - 1995 Original Ingles
C: the complete reference - 3ªED - 1996
Tradução Portugues C Completo e Total
C: the complete reference - 4ªED - 2000 Original Ingles
ainda nao traduzido
--------------------------------------------------------------
O atual Assembler FASM é totalmente desenvolvido em Assembly, tanto que vc pode alterar algo no fonte e compilar com ele mesmo. Facilimo de aprender, sem aquele monte de besteiras do MASM.
--------------------------------------------------------------
C++ é uma linguagem com mais robustez e direcionada´à Orientação a Objetos. Discordo que seja outra linguagem à parte de C.
C++ é um conjunto de C com mais opções e mais poderosa.

Outra linguagem seria por exemplo o Pascal. O que acontece se pegarmos um pedaço de codigo pascal e tentarmos compilar em C ou C++? Nao funciona ..... O que acontece se pegarmos um pedaço de codigo C/C++ e tentarmos compilar em pascal? Nao funciona...
O que acontece se tentarmos compilar qualquer coisa de C com compilador C++? FUNCIONA !!!!!!! Entao C e C++ não sao duas linguagens, apenas alguma delas tem algo a mais do que a outra.

Claro que essa é a minha opinião.
Marcelo/Curitiba
slave0145@bol.com.br

[6] Comentário enviado por Pedro Rafael em 20/05/2008 - 22:36h

C não é linguagem de alto nível não cara. Ela é de médio nível. Alto nível é por exemplo o python.....

fui..



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts