Baixe o app para aproveitar ainda mais
Prévia do material em texto
INSTITUTO FEDERAL SUL-RIO-GRANDENSE Engenharia Elétrica Programação de Computadores I - Aula 1 – Prof. Glaucius Décio Duarte Página 1 Engenharia Elétrica Programação de Computadores I - Aula 1 (atualizada em 29/07/2009) glaucius@pelotas.ifsul.edu.br Linguagem C C é uma linguagem de programação estruturada e padronizada criada na década de 1970 por Dennis Ritchie e Ken Thompson, para ser usada no sistema operacional UNIX. Desde então se espalhou por muitos outros sistemas operativos, e tornou-se uma das linguagens de programação mais usadas. C tem como ponto-forte a sua eficiência e é a linguagem de programação de preferência para o desenvolvimento de software de sistemas, apesar de também ser usada para desenvolver aplicações. É também muito usada no ensino de ciências da computação, mesmo não tendo sido projetada para novatos. Conceitos gerais C é uma linguagem de programação relativamente minimalista que opera bem próximo do hardware, e é mais semelhante à linguagem assembly do que as restantes linguagens. Certamente, C é por vezes referida como uma "assembly portátil". O código de C pode ser compilado para ser rodado em quase todos os computadores/sistemas operativos. C é tipicamente chamada de uma linguagem de baixo nível ou de nível médio, indicando assim o quanto perto ela opera com o hardware. Essa propriedade não foi acidental. A Linguagem C foi criada com um objetivo em mente: facilitar a criação de programas extensos com menos erros recorrendo ao paradigma da programação algorítmica ou procedimental, mas sem nunca sobrecarregar o autor do compilador de C, 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 nuclear 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 padronizado. * A focalização no paradigma de programação procedimental. * 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. * Um acesso de baixo-nível à memória do computador, através do uso de ponteiros. * 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. INSTITUTO FEDERAL SUL-RIO-GRANDENSE Engenharia Elétrica Programação de Computadores I - Aula 1 – Prof. Glaucius Décio Duarte Página 2 Algumas características úteis que faltam à linguagem C, mas que são encontradas em outras linguagens inclui: * Segurança de tipo. * Coleta automática de lixo. * Classes ou objetos com comportamento (ver programação orientada por objetos). * Um sistema avançado de sistema de tipos. * Funções aninhadas. * Programação genérica. * Sobrecarga de operadores. * Meta-programação. * Apoio nativo de multithreading e networking. Apesar da lista de características úteis que C não possui ser longa, isso não tem sido um impedimento à sua aceitação, pois isso permite que novos compiladores de C sejam escritos rapidamente para novas plataformas, e também permite que o programador permaneça sempre em controle do que o programa está a fazer. Isto é o que por várias vezes permite o código de C correr de uma forma mais eficiente que muitas outras linguagens. Tipicamente, só código de assembly "afinado à mão" é que corre mais rapidamente, pois possui um controle completo da máquina, mas avanços na área de compiladores juntamente com uma nova complexidade nos processadores modernos permitiram que a diferença tivesse sido rapidamente eliminada. Uma conseqüência da aceitação geral da linguagem C é que freqüentemente os compiladores, bibliotecas e até intérpretes de outras linguagens de nível maior sejam eles próprios implementados em C. Fonte: Wikipedia
Compartilhar