Baixe o app para aproveitar ainda mais
Prévia do material em texto
TÉCNICAS DE PROGRAMAÇÃO 1 INTRODUÇÃO À LING C Prof Geiza Maria Hamazaki da Silva 2013.1 Resumo Para implementar algoritmos em uma linguagem de programação é importante conhecer o conceitos básicos dos ambientes de programação. Para o teste do ambiente a ser utilizado no curso é apresentado o Primeiro programa na linguagem C. Compilação de programas Ao escrever um programa é realizado a codificação de uma sequência de operações para serem executadas pelo computador. Algoritmo: Programa Linguagem C variáveis a,b,c: inteiro; início leia(a,b); c a+b; imprima(c); fim. int a,b,c; scanf(“%d %d”,&a,&b); c= a+b; printf(“%d”, c); Compilação de programas Um programa escrito em C não pode ser diretamente executado, pois os computadores só executam programas em sua linguagem de máquina (Assembly) - específica de cada modelo (ou família de modelos) de computador. Não entendo essas instruções!! http://3.bp.blogspot.com/_eU2zBBNQzO4/TP7N1jQzx9I/AAAAAAAAAX4/W1NHUpJj0 A0/s1600/La+tristeza+del+computador.jpg int a,b,c; scanf(“%d d”&a,&b); c= a+b; printf(“%d”, c); Compilação de programas A linguagem de Máquina será referenciada neste conjunto de slides como M. Agora sim!! Eu entendo a Linguagem M! int a,b,c; scanf(“%d d”&a,&b); c= a+b; printf(“%d”, c); int, 7h AXBX, AX int, 4h AXCX, AX SOMA:sub CX add BX jz SOMA AX, BX out C o m p ila çã o Compilação de programas C é uma linguagem compilada o que significa que um programa escrito em C (referenciada como Pc) só pode ser executado se antes for “traduzido” para a linguagem de máquina (M) correspondente ao modelo do computador a ser utilizado. A esse processo damos o nome de compilação. Compilação de programas O termo máquina é intencionalmente vago. Computadores idênticos com sistemas operacionais diferentes devem ser considerados máquinas, ou plataformas diferentes. Um programa em C compilado em um PC com Windows não pode ser executado em um PC com linux e vice-versa para cada máquina devemos repetir o processo de compilação. Compilação de programas Um compilador (Cm) - escrito em M, realiza os seguintes passos: 1-lê o programa Pc - escrito em C; 2- traduz cada uma de suas instruções para M, escrevendo um programa-objeto Pm. O programa-objeto é conhecido também como código-objeto ou código binário ou código de máquina. Pc programa fonte Cm compilador Pm programa objeto Processo de Compilação Compilação de programas Desta forma a construção de um programa que usa a linguagem C envolve duas fases independentes: compilação e execução conforme ilustra a figura abaixo: dados de entrada saída Pm programa objeto Processo de Execução Pc programa fonte Cm compilador Pm programa objeto Processo de Compilação Compilação de programas Relação entre o processo de Compilação e Execução: dados de entrada saída Processo de Execução Pc programa fonte Cm compilador Pm programa objeto Processo de Compilação Compilação de programas Na prática, o programa fonte e o programa objeto são armazenados em arquivos em memória Secundária, aos quais nos referimos como arquivo fonte e arquivo objeto. dados de entrada saída Processo de Execução Pc programa fonte Cm compilador Pm programa objeto Processo de Compilação Desenvolvendo programas em C Para desenvolver programas em C é necessário, no mínimo, um editor e um compilador: O editor de texto é utilizado para escrever os programas fontes, que são salvos em arquivos. Pode-se utilizar qualquer editor de texto para escrever os programas-fontes, exceto editores que incluem caracteres de formatação (como o Word do Windows, por exemplo); e O compilador transformam os programas fontes em programas objetos (linguagem de máquina) serem executados. Desenvolvendo programas em C os programas fontes são, em geral, armazenados em arquivos cujo nome tem a extensão “.c” os programas executáveis possuem extensões que variam com o sistema operacional no Windows, têm extensão “.exe” no Unix (Linux), em geral, não têm extensão. Ambiente de programação Para execução dos trabalhos, será necessário obter um compilador C Os alunos podem usar qualquer compilador C que siga o padrão ANSI. Entretanto, o compilador de referência do nosso curso é do Visual C++. Estilo de programação Adquire-se um bom estilo de programação apenas com a prática. Recomendação Sempre escrever um programa que seja de fácil compreensão para outras pessoas Não existe fórmula mágica que garanta programas legíveis. Porém, existem diversas boas práticas de programação a serem seguidas. Primeiro programa C Considerando um exemplo simples que imprime uma linha de texto 1. /* primeiro programa */ 2. #include <stdio.h> 3. /* a funcao main inicia o programa */ 4. int main(){ 5. printf(“Bem-vindo ao Curso de TP-1!\n"); 6. /* indica que o programa terminou com sucesso */ 7. return 0; 8. } O par de caracteres /*, indicando um comentário, que termina com o próximo par de caracteres */ Primeiro programa C Comentário: /* primeiro programa */ Programadores inserem comentários para documentar programas e também para ajudar as pessoas a ler e a entender programas. Os comentários são ignorados pelo computador durante a execução do programa. Primeiro programa C Considerando um exemplo simples que imprime uma linha de texto 1. /* primeiro programa */ 2. #include <stdio.h> 3. /* a funcao main inicia o programa */ 4. int main(){ 5. printf(“Bem-vindo ao Curso de TP-1!\n"); 6. /* indica que o programa terminou com sucesso */ 7. return 0; 8. } Diretiva de Pré-processamento Primeiro programa C linha 2 #include <stdio.h> É uma diretiva de pré-processamento, que é uma mensagem para o pré-processador C. As linhas que iniciam com # são processadas pelo pré-processador antes de o programa ser compilado. Essa linha instrui o pré-processador a incluir no programa o conteúdo do arquivo de cabeçalho de biblioteca de entrada/saída stdio.h, este arquivo deve ser incluído em qualquer programa que realize saída de dados na tela ou a entrada de dados a partir do teclado. Primeiro programa C Erro comum de programação 1: Esquecer de incluir o arquivo de cabeçalho. Neste caso o compilador emite uma mensagem de erro, no exemplo apresentado o compilador não reconhecerá a função printf. Primeiro programa C Considerando um exemplo simples que imprime uma linha de texto 1. /* primeiro programa */ 2. #include <stdio.h> 3. /* a funcao main inicia o programa */ 4. int main(){ 5. printf(“Bem-vindo ao Curso de TP-1!\n"); 6. /* indica que o programa terminou com sucesso */ 7. return 0; 8. } Linha em branco Primeiro programa C Utilize linhas em branco e caracteres de espaço em branco para aprimorar a legibilidade do programa. Primeiro programa C Considerando um exemplo simples que imprime uma linha de texto 1. /* primeiro programa */ 2. #include <stdio.h> 3. /* a funcao main inicia o programa */ 4. int main(){ 5.printf(“Bem-vindo ao Curso de TP-1!\n"); 6. /* indica que o programa terminou com sucesso */ 7. return 0; 8. } Função Principal- Marca o início do código a ser compilado. Primeiro programa C int main() A main é uma função caracterizada pelos parênteses depois da palavra main. Um programa em C, em geral, é constituído de diversas pequenas funções que são independentes entre si. Funções são blocos de códigos que realizam um processamento específico. Por exemplo a função printf imprime a informação entre os parênteses na tela. Primeiro programa C Em C não é permitido definir uma uma função dentro de outra. Pode-se apenas realizar chamadas a uma função dentro da outra. Um programa em C tem que, obrigatoriamente, conter a função principal main. Primeiro programa C A execução de um programa começa pela função principal. a função main é automaticamente chamada quando o programa é carregado para a memória principal, mesmo se main não for a primeira função no código do programa. A palavra-chave int à esquerda de main indica que main retorna um valor do tipo inteiro . A chave esquerda { deve começar o corpo da função e a chave direita } correspondente deve terminar o corpo da função. Primeiro programa C Considerando um exemplo simples que imprime uma linha de texto 1. /* primeiro programa */ 2. #include <stdio.h> 3. /* a funcao main inicia o programa */ 4. int main(){ 5. printf(“Bem-vindo ao Curso de TP-1!\n"); 6. /* indica que o programa terminou com sucesso */ 7. return 0; 8. } Primeiro programa C As funções auxiliares são chamadas, direta ou indiretamente, a partir da função principal linha 5 printf() printf é uma função da biblioteca padrão do C, que possibilita a saída de valores segundo um determinado formato. Para usar a função printf() incluímos o arquivo de cabeçalho stdio.h Primeiro programa C “Bem-vindo ao Curso de TP-1!\n” Uma cadeia de caracteres (ou string) em C é uma série de caracteres entre aspas duplas os caracteres de espaço em branco em cadeia de caracteres não são ignorados pelo computador. a barra invertida (\) é chamada de caractere de escape, ela indica que um caractere especial deve ser impresso. Neste exemplo o \n indica que o cursor deve se mover para o começo da próxima linha na tela. Primeiro programa C Quando uma barra invertida é encontrada em uma cadeia de caracteres o próximo caractere é combinado com a barra invertida para formar um caractere de escape (um único caractere) o caractere de escape \n significa nova linha, este é um caractere não imprimível. Primeiro programa C Além do caractere de nova linha, existem alguns outros caracteres de escape que são frequentemente utilizados nos formatos de saída \n nova linha: posiciona o cursor de tela no início da próxima linha \t tabulação: move o cursor de tela para a próxima parada de tabulação \r retorno de carro (retrocesso): posiciona o cursor de tela no início da linha atual, não avança para a próxima linha \a alerta: aciona o aviso sonoro do sistema \’ aspas simples: imprime um caractere de aspas simples ’ \” aspas duplas: imprime um caractere de aspas duplas ” \\ barra invertida: imprime um caractere de barra invertida \ Primeiro programa C printf(“Bem-vindo ao Curso de TP-1!\n"); Este é um comando Todos os comandos e todas as declarações em C são terminados pelo caractere ponto-e-vírgula (;) cuidado! as diretivas de pré-processamento (como #include, por exemplo) não terminam com um ponto-e-vírgula. a função printf é chamada, ou invocada, fazendo com que a cadeia de caracteres passada com argumento seja impressa na tela. Primeiro programa C Considerando um exemplo simples que imprime uma linha de texto 1. /* primeiro programa */ 2. #include <stdio.h> 3. /* a funcao main inicia o programa */ 4. int main(){ 5. printf(“Bem-vindo ao Curso de TP-1!\n"); 6. /* indica que o programa terminou com sucesso */ 7. return 0; 8. } Saída da função Primeiro programa C linha 7 return 0; É uma das várias maneiras utilizada para sair de uma função. Quando o comando return é utilizado no fim de main o valor zero indica que o programa terminou com sucesso. A chave direita } indica o fim da função main. Nas próximas aulas será discutido as funções em detalhes e as razões de se incluir esta linha se tornarão claras. Por enquanto simplesmente inclua este comando em cada programa. Primeiro programa C Erro comum de programação 2 Omitir o ponto-e-vírgula no final de uma instrução. Erro de sintaxe A sintaxe de uma linguagem de programação especifica as regras da criação de um programa adequado nessa linguagem. Um erro de sintaxe ocorre quando o compilador encontra um código que viola as regras da linguagem. O compilador normalmente emite uma mensagem de erro para ajudar o programador a localizar e corrigir o código incorreto. Primeiro programa C Erro de sintaxe (continuação) Erros de sintaxe também são chamados erros de compilação, erros em tempo de compilação, porque o compilador os detecta durante a fase de compilação. Não será possível executar seu programa até você corrigir todos os erros de sintaxe nele. Alguns erros de compilação não são erros de sintaxe, podem ser erro de linkedição. Não encontram os arquivos para montar o arquivo executável. 37 Referências W. Celes, R. Cerqueira e J.L. Rangel, Introdução a Estruturas de Dados - com técnicas de programação em C, Ed. Campus, 2004 A. Kelley, A Book on C, Benjamin Cummings, 1995 Notas de aulas do curso presencial de Técnicas de Programação1- UNIRIO - Desenvolvidos pelas professoras: Geiza Maria Hamazaki da Silva e Adriana C. F Alvim – primeiro semestre de 2011.
Compartilhar