Linguagem C Programação I Linguagem C

June 5, 2017 | Autor: Reginaldo Elias | Categoria: Programming Languages
Share Embed


Descrição do Produto

Linguagem C

Programação I 2016 v12

Linguagem C Linguagem de Programação Utilizada no Curso:

Linguagem C

Programação I – Linguagem C, Geração de Código e Erros

2

1

Algumas Características da Linguagem C: • Linguagem de Alto nível de uso geral; • Linguagem estruturada e modular; • É a segunda linguagem mais usada no mundo ( superada apenas pela linguagem Java) ; • Geração de código eficiente e otimizado. Gera Programas Compactos e Rápidos ( indicada para criação de compiladores, editores de texto, bancos de dados, softwares de comunicação, drivers, sistemas operacionais, ...); • Controle de erro relaxado. Sem muita checagem de erros em tempo de execução com o objetivo de aumentar a performance. O programador deve ter bastante cuidado ao escrever programas; • Linguagem de programação para profissionais e não para amadores; • Faz distinção entre maiúsculas e minúsculas – “case sensitive”; • Criada nos Bell Laboratories por Dennis Ritchie em 1972. Derivada da linguagem B ( Ken Thompson ); • Padronização C ANSI (American National Standards Institute ) em 1983; • Simples - O padrão C ANSI estabelece 32 palavras-chaves; • C é uma linguagem compilada: lê todo o código fonte e depois gera o código objeto; • Biblioteca de funções implementar muitos recursos de alto nível para o programador; • Grande conjunto de operadores; • Compilação separada; • Compilação condicional • “Multiplataforma” ( Portável utilizando o Padrão ANSI ); • ...

Programação I – Linguagem C, Geração de Código e Erros

3

Linguagem C: A Linguagem C tem um excelente desempenho e também é muito versátil. Ela é usada para desenvolver os mais diferentes tipos de softwares. Linguagens como Java, C++ e C#, PHP, Ruby, Python, foram influenciadas pela linguagem C. Foi usada para desenvolver vários softwares bastante conhecidos: • O sistema operacional UNIX; • As planilhas eletrônicas Lotus 1,2,3 e Microsoft Excel; • O gerenciador de base de dados Microsoft Access; • Gerenciadores de arquivos: o Dbase e o Clipper; • Vários utilitários como o editor de formulários FormTool; • Diversos programas de automação industrial • Várias outras linguagens de programação como o Power Builder e o Visual Basic; • Aplicações Gráficas: Efeitos Especiais de filmes como Star Trek e Star War; • ...

Programação I – Linguagem C, Geração de Código e Erros

4

2

Linguagem C: Código fonte: Texto de um programa que um usuário tem acesso ( pode ler ). É a entrada para o compilador; Código objeto: Tradução do código fonte de um programa em código de máquina que o computador pode ler e executar; Biblioteca: Arquivo contendo as funções padrão que o programa fonte pode usar; Linker: Programa que junta as funções compiladas separadamente em um único programa; Tempo de compilação: Eventos que ocorrem enquanto o programa está sendo compilado; Tempo de execução: Eventos que ocorrem enquanto o programa é executado.

Programação I – Linguagem C, Geração de Código e Erros

5

Linguagem C Início Préprocessador

Linkeditor

Código Fonte em C

Bibliotecas em C

Geração do Código Executável

Compilador

Fim

Não Erros ?

Sim

Programação I – Linguagem C, Geração de Código e Erros

6

3

Geração de Código de Máquina Programa Fonte ( p.e. teste.c )

Feito para ser entendido por pessoas

Compilador

Feito para ser entendido por computadores

Dev C++ (no nosso caso)

Programa Executável ( p.e. teste.exe )

Programação I – Linguagem C, Geração de Código e Erros

7

Geração de Código de Máquina Repetir até que todos os erros de sintaxe tenham sido eliminados

Programa Fonte ( teste.c )

Compilador Programa Executável ( teste.exe )

Só gera o código executável se não detectar erros de sintaxe no programa fonte. Quando um erro de sintaxe for detectado este deve ser corrigido no programa fonte e este submetido novamente ao compilador. A etapa anterior deve ser repetida até que todos os erros de sintaxe tenham sido eliminados!!! Programação I – Linguagem C, Geração de Código e Erros

8

4

Tipos de Erros I - Erros de Sintaxe

Ferem a gramática / sintaxe da linguagem C São detectados e indicados (na maioria) pelo compilador Ex. linha correta deveria ser: printf(“ola”); mas foi escrita como: print(“ola”); scanf(“%i”, &idade); scanf(“%i”, &idade; a = b + c; a = b + c printf(“Soma = %i”, soma); printf(“Soma = %i” soma); Programação I – Linguagem C, Geração de Código e Erros

9

Tipos de Erros II - Erros de Lógica ou de execução ("bugs") Descrevem ( corretamente em termos de sintaxe ) uma instrução ou comando que não deveria constar ( ou consta de forma errada ) no programa. Neste tipo de erro, o programa compila normalmente sem erros de sintaxe, mas quando é executado, verificamos que ele não faz aquilo que esperamos que ele faça.

Não são detectados pelo compilador Ex.:

salario_novo = salario_atual * 1.05;

CERTO

salario_novo = salario_atual * 1.50;

ERRADO

Este tipo de erro é descoberto quando verificamos que o programa ( embora correto sintaticamente ) não faz o que queremos ou mostra resultados incoerentes / errados. É necessário analisar todo o programa para descobrir qual(is) instrução(ões) está(ão) errada(s).

Programação I – Linguagem C, Geração de Código e Erros

10

5

Tipos de Erros

Um programa de computador faz o que você MANDA E não o que você QUER!!! Programação I – Linguagem C, Geração de Código e Erros

11

Acentuação A acentuação no Dev C++ requer pequenas mudanças na impressão e será vista posteriormente. Nos programas iniciais, todas as mensagens – tanto de entrada quanto de saída – devem ser impressas sem acentos.

Programação I – Linguagem C, Geração de Código e Erros

12

6

Pequenas Peças

Programação I – Linguagem C, Geração de Código e Erros

13

Pequenas Peças

Programação I – Linguagem C, Geração de Código e Erros

14

7

Introdução Declarações

int, float, ...

( Tipos de dados)

Leitura

scanf

(Entrada de dados)

Impressão

printf

(Impressão de resultados)

Operadores Operadores ( lógicos)

Operadores ( relacionais)

=

Atribuição

...

Decisão

if, switch

Repetição

for, while, do

+, -, *, /

( matemáticos)

&&, ||, !

>, =,
Lihat lebih banyak...

Comentários

Copyright © 2017 DADOSPDF Inc.