Buscar

Aula 1Material_de_apoio_ee_pc1_a01

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

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

Outros materiais