Linguagem de programação
C é uma linguagem imperativa e procedural, para implementação de sistemas. Seus pontos de design foram para ele ser compilado, fornecendo acesso de baixo nível à memória e baixos requerimentos do hardware. Também foi desenvolvido para ser uma linguagem de alto nível, para maior reaproveitamento do código. C foi útil para muitas aplicações que foram codificadas originalmente em Assembly.
Essa propriedade não foi acidental; a linguagem C foi criada com o objectivo principal em mente: facilitar a criação de programas extensos com menos erros, recorrendo ao paradigma da programação procedural, mas sobrecarregando menos o autor do compilador, cujo trabalho complica-se ao ter de realizar as características complexas da linguagem. Para este fim, a linguagem C possui as seguintes características:
Uma linguagem extremamente simples, com funcionalidades não-essenciais, tais como funções matemáticas ou manuseamento de ficheiros (arquivos), fornecida por um conjunto de bibliotecas de rotinas padronizada
A focalização no paradigma de programação procedural
Um sistema de tipos simples que evita várias operações que não fazem sentido
Uso de uma linguagem de pré-processamento, o pré-processador de C, para tarefas tais como a definição de macros e a inclusão de múltiplos ficheiros de código fonte
Ponteiros dão maior flexibilidade à linguagem
Acesso de baixo-nível, através de inclusões de código Assembly no meio do programa C
Parâmetros que são sempre passados por valor para as funções e nunca por referência (É possível simular a passagem por referência com o uso de ponteiros)
Definição do alcance lexical de variáveis
Estruturas de variáveis, (structs), que permitem que dados relacionados sejam combinados e manipulados como um todo http://pt.wikipedia.org/wiki/C_(linguagem_de_programa%C3%A7%C3%A3o) Programação em C - vantagens e desvantagens
Vantagens: É uma linguagem simples que nos permite trabalhar com funções matemáticas, ficheiros, entre outras