C

Da WikiCiências
Share/Save/Bookmark
Ir para: navegação, pesquisa

Referência : Ribeiro, P. (2012), WikiCiências, 3(06):0622
Autor: Pedro Ribeiro
Editor: Fernando Manuel Augusto Silva



A linguagem de programação C segue o paradigma de Programação Imperativa e foi desenvolvida entre 1969 e 1973 por Dennis Ritchie. O C é uma das linguagens de programação mais populares de sempre [1] e existem compiladores disponíveis para quase todas as arquitecturas de computador.

Índice

Breve História

O C foi inicialmente pensado para o desenvolvimento de sistemas de operação, nomeadamente Unix. Dado o facto de possuir tantos compiladores, é também usado frequentemente para o desenvolvimento de aplicações portáveis, possíveis de serem compiladas em diferentes arquitecturas.

O desenvolvimento inicial do C ocorreu entre 1969 e 1973 nos AT&T Bell Labs, por intermédio do cientista de computadores Dennis Ritchie. O seu nome deve-se facto de ter sido derivada de uma linguagem de programação mais antiga chamada B. Em 1978 D. Ritchie e B. Kernighan publicaram a primeira versão do livro do livro "The C Programming Language", que viria a tornar-se a referência da linguagem e durante muitos anos foi usado como o texto de especificação da linguagem. A segunda edição do livro [2], de 1988, cobre uma versão mais actualizada de ANSI C, uma norma que foi obtida através de um grupo de trabalho mais alargado. A versão mais actual de C data de 2011 e é conhecida como C11 [3]. O compilador mais conhecido e usado é o GCC [4].

Em termos de linguagens baseadas em C, entre muitos outros casos, a linguagem de programação C++ surgiu como sendo uma espécie de extensão suportando a Programação Orientada a Objectos. A linguagem de programação C# teve forte inspiração no C. A linguagem de programação D [5] apareceu também como uma possível evolução da linguagem C++.

Exemplos de Código Fonte

O programa seguinte, escrito corretamente segundo a norma C11, escreve "Ola Mundo" para a saída padrão (standard output):

#include <stdio.h>

int main() {
 printf("Ola Mundo\n");
 return 0;
}

O extrato de código fonte seguinte, escrito corretamente segundo a norma C11, corresponde a uma função iterativa que, dado um número inteiro positivo n, retorna o somatório dos números entre 1 e n, isto é, \(soma(n) = \sum_{k=1}^n k = 1 + 2 + \ldots + (n-1) + n\).

int soma(int n) {
  int i, resultado = 0;
  for (i=1; i<=n; i++)
    resultado += i;
  return resultado;
}

Uma versão recursiva da mesma função podia ser escrita do seguinte modo em C:

int soma(int n) {
  if (n == 1)
    return 1;
  else
    return n + soma(n-1);
}

Referências

  1. Página Web: http://www.langpop.com/ Acedida a 29/05/2012. (em inglês)
  2. http://cm.bell-labs.com/cm/cs/cbook/ Brian W. Kernighan and Dennis M. Ritchie. The C Programming Language, Second Edition. Prentice Hall, Inc., 1988.
  3. Página Web: http://www.open-std.org/jtc1/sc22/wg14/ Grupo de trabalho para a versão padrão de C. Acedida a 29/05/2012. (em inglês)
  4. Página Web:http://gcc.gnu.org/ GCC, the GNU Compiler Collection. Acedido a 29/05/2012. (em inglês)
  5. Página Web: http://www.d-programming-language.org/ D Programming Language. Acedida a 29/05/2012.

Saber Mais



Criada em 29 de Maio de 2012
Revista em 30 de Maio de 2012
Aceite pelo editor em 01 de Junho de 2012