Baixe o app para aproveitar ainda mais
Prévia do material em texto
CIn.ufpe.br Computação Eletrônica Introdução à linguagem C Prof.: André Tiba akot@cin.ufpe.br CIn.ufpe.br Linguagem Adotada na Disciplina • Anteriormente utilizava a Linguagem Pascal • Do semestre 2013-2 em diante – Uso da Linguagem de Programação C – Adaptação do conteúdo para “as engenharias” – Exercícios direcionados ao curso de engenharia – Mais aulas em laboratório 2 CIn.ufpe.br Computação Eletrônica • Por que a linguagem C??? – Defasagem da linguagem Pascal – Principais linguagens do mercado/comerciais são baseadas em C (C++, Java, php) – Em termos de desempenho (velocidade de execução) é imbatível – Maior parte do sistemas operacionais (Windows, Linux e Unix) são escritos em C. 3 CIn.ufpe.br Computação Eletrônica • Por que a linguagem C??? – Conexão de dispositivos a computadores são possíveis por meio de softwares em C. – Devido ao fator velocidade de execução: • O famoso efeito 3D é provido melhor usando C • Melhor linguagem para embutir software em um dispositivo • Melhor linguagem para desenvolvimento de Games – Escolhida como linguagem científica (há controversas). 4 CIn.ufpe.br Computação Eletrônica 5 CIn.ufpe.br Computação Eletrônica • Aplicações usando C: 6 CIn.ufpe.br Computação Eletrônica • Aplicações usando C: 7 CIn.ufpe.br Computação Eletrônica • Aplicações usando C: 8 CIn.ufpe.br Computação Eletrônica • Aplicações usando C: 9 CIn.ufpe.br Ambientes de Desenvolvimento • Ou IDE (Integrated Development Environment): • Normalmente incluem: – Um editor de texto especializado na edição de códigos-fonte, provendo facilidades como complementação automática de código (code completion), destacamento de sintaxe através de cores (syntax highlighting) e na geração automática de código; – Um compilador (compiler) que compilia o codigo-fonte gerando um programa executável; – Um depurador (debugger) que permite executar o programa passo-a- passo verificando o valor contido em variáveis e a linha de execução realizada. 10 CIn.ufpe.br Ambientes de Desenvolvimento • IDEs gratuitas para C/C++ recomendadas para o curso: – Code::Blocks - http://www.codeblocks.org/ – Dev C++ - http://sourceforge.net/projects/dev-cpp/ – MinGW - http://www.mingw.org/ • Outras IDEs mais profissionais e também gratuitas: – Eclipse - https://www.eclipse.org/ – Netbeans - https://netbeans.org/downloads/ 11 CIn.ufpe.br Ambientes para Mac • Code::Blocks http://www.codeblocks.org/downloads/26 • CodeLite http://downloads.codelite.org/ • Xcode – Vem no DVD que acompanha o MacBook ou pode ser baixado de: https://developer.apple.com/xcode/ 12 CIn.ufpe.br Apps para iOS • Para iPad e iPhone – C Programming Language • https://itunes.apple.com/br/artist/dmitry-kovba/id499545921?l=en – CodeToGo • https://itunes.apple.com/br/app/codetogo/id382677229?l=en&mt=8 – Gusto - Code Editor • https://itunes.apple.com/us/app/gusto/id364906873?mt=8 13 CIn.ufpe.br Apps para Android • DroidEdit – https://play.google.com/store/apps/details?id=com.aor.droidedit&hl=en • CppDroid - C/C++ IDE – https://play.google.com/store/apps/details?id=name.antonsmirnov.andr oid.cppdroid • +15 apps for programming on Android – http://android.appstorm.net/roundups/developer/15-apps-for- programming-on-android/ 14 CIn.ufpe.br Apps para Windows phone • Touch C – http://www.windowsphone.com/en-us/store/app/touch-c/3fb34f3f- 83e9-4199-a70e-d05a47172794 • C for beginners – http://www.windowsphone.com/en-us/store/app/c-for- beginners/d8fc45de-1c6d-45f0-b34b-83296444e11b • Program in C – http://www.windowsphone.com/en-us/store/app/program-in- c/4536bd55-276c-4c09-8383-4ea1621ee61d 15 CIn.ufpe.br • IDE CodeBlocks, download em: • http://www.codeblocks.org/downloads/26 • Para Windows: codeblocks-16.01mingw-setup.exe • Para Linux: • Veja opções (É possível que tenha que instalar por fora um compilador gcc/g++). • Mac: indisponível, vai precisar utilizar outra IDE. Instalação de IDE e compilação do 1º programa em C 16 CIn.ufpe.br • IDE do CodeBlocks: Instalação de IDE e compilação do 1º programa em C 17 CIn.ufpe.br • Escolha Console application: Instalação de IDE e compilação do 1º programa em C 18 CIn.ufpe.br • Escolha o tipo de linguagem, neste caso C: Instalação de IDE e compilação do 1º programa em C 19 CIn.ufpe.br • Escolha o título do projeto e o diretório onde irá salvá-lo: Instalação de IDE e compilação do 1º programa em C 20 CIn.ufpe.br • O CodeBlocks cria um código-fonte compilável; • Este programa imprime na tela do computador a célebre frase: “Hello wold!” Instalação de IDE e compilação do 1º programa em C 21 CIn.ufpe.br • Compile o programa ao clicar em Build; • O programa tem 0 erros, então cria um arquivo executável. Instalação de IDE e compilação do 1º programa em C Nenhum erro encontrado, criou o arquivo teste.exe 22 CIn.ufpe.br • Após clicar Run, o programa roda o executável e escreve na tela; • O programa está funcionando! Agora você pode alterá-lo e escrever novos programas a partir deste primeiro. Instalação de IDE e compilação do 1º programa em C 23 CIn.ufpe.br • A estrutura básica de um programa C deve seguir a seguinte ordem: 1. Inclusão de bibliotecas (quando necessário); 2. Declaração das constantes e variáveis globais (quando necessário); 3. Programa principal; » Declaração de variáveis locais (quando necessário); » Sequência de comandos. Estrutura de um Programa Básico em C 24 CIn.ufpe.br Exemplo: Cálculo do cubo de um número – Linguagem C 25 CIn.ufpe.br Exemplo: Cálculo do cubo de um número – Linguagem C Inclusão de biblioteca Declaração das variáveis locais sequencia de comandos declaração do programa principal limitado pelo par de chaves 26 CIn.ufpe.br • Um programa em C inicia com a inclusão de bibliotecas. Uma biblioteca é um arquivo que contém um conjunto de funções complementares, que são utilizadas pelo programa. • Para a inclusão de uma biblioteca, deve-se usar uma diretiva de compilação. A diretiva “#include” informa ao compilador quais bibliotecas devem ser anexadas ao programa executável. • Assim, a diretiva para a inclusão de uma biblioteca tem a seguinte sintaxe: Programa em C #include <nome_do_arquivo_da_biblioteca> 27 CIn.ufpe.br • De maneira geral, os arquivos de biblioteca têm a terminação .h (esse h vem de header, ou seja, este é um arquivo de cabeçalho). • Para cada biblioteca, que será incluída no nosso programa, devemos colocar um comando #include. • Na medida em que formos aprendendo novas funções, serão indicadas quais bibliotecas devem ser incluídas no programa. • Ex.: Programa em C 28 #include <stdio.h> standard input output header (cabelhaço padrão de entrada/saída) CIn.ufpe.br Programa em C • A quantidade de bibliotecas e quais bibliotecas serão incluídas dependem das funções que serão utilizados no programa; • Pode ser que em um programa não seja necessário incluir nenhumabiblioteca; • No exemplo, a biblioteca <stdio.h> proporciona as funções de texto na tela tela (printf(...)) e leitura da da entrada do teclado (scanf(...)). 29 CIn.ufpe.br • O segundo item da estrutura do programa C é o programa principal “main”. • É no programa principal onde coloca-se a sequência de comandos que deve ser executada para a solução do problema que deseja-se resolver. • É necessário informar onde começa e termina o programa principal. • O programa principal inicia com: main(). • A sequência de comandos do programa principal é delimitada por um par de chaves: “{“ (abre chaves) e “}” (fecha chaves). • As chaves que delimitam o corpo do programa principal. • Fazendo uma comparação com o algoritmo, as chaves fazem o papel do “inicio” e “fim do algoritmo”. Programa em C 30 CIn.ufpe.br • Logo no início do programa principal, deve-se declarar as variáveis. • A declaração de variáveis é um item opcional, pode acontecer de não precisarmos declarar variáveis no nosso programa (como no programa teste do slide 21). • No exemplo anterior, a declaração de variáveis foi realizada através da declaração de duas variáveis do tipo inteiro: num e cubo. Programa em C 31 CIn.ufpe.br • Após a declaração das variáveis, escreve-se a sequência de comandos que o programa deverá executar. • O programa termina com o fecha chaves que delimita o programa principal. Programa em C 32 CIn.ufpe.br Programa em C • Conhecido como é a estrutura de um programa básico em C, vamos começar a aprender a sintaxe dos comandos, para darmos início ao desenvolvimento dos nossos programas: – As linguagens de programação são formadas por um conjunto de regras de sintaxe e semântica que ditam como o programa deve ser escrito. – Com isso, dentro dessas regras, existe um conjunto de palavras que tem um significado para a linguagem de programação – são as palavras reservadas. – Uma palavra reservada é, essencialmente, um comando e, na maioria das vezes, as palavras reservadas de uma linguagem definem o que pode ser feito e como pode ser feito. 33 CIn.ufpe.br auto break case char const switch volatile continue default do double else typedef while enum extern float for goto union if int long register unsigned return short signed sizeof static struct void Palavras Reservadas em C 34 CIn.ufpe.br • Os comentários são utilizados para documentar um programa. • A colocação de comentários em um programa é uma das boas práticas de programação. • Os comentários irão facilitar o entendimento e manutenção de programas. • Os comentários podem ser colocados em qualquer parte do programa. • Quando o compilador identifica um comentário, ele o ignora, já que o comentário é apenas informação para o programador. • A linguagem C fornece dois tipos de comentários: de linha e de bloco. Uso de Comentários 35 CIn.ufpe.br • Os comentários de linha são mais utilizados quando desejamos comentar uma única linha do nosso programa. // texto do comentário • Os comentários de bloco são utilizados quando queremos fazer um comentário maior, que compreenda mais de uma linha de comentário. Uso de Comentários /* texto do comentário texto do comentário texto do comentário */ 36 CIn.ufpe.br Exemplo - Programa Comentado 37 CIn.ufpe.br Criando um Projeto no Code::Blocks 38 CIn.ufpe.br Criando um Projeto no Code::Blocks • Neste curso iremos utilizar “Aplicações de Console” como tipo de projeto: 39 CIn.ufpe.br Criando um Projeto no Code::Blocks • E os projetos serão feitos em Linguagem C: 40 CIn.ufpe.br Criando um Projeto no Code::Blocks • Indique o nome e o diretório do projeto: 41 CIn.ufpe.br Os Fundamentos do Ambiente C • No Code::Blocks, o programa executável “.exe” é armazenado no diretório “bin\Debug”, dentro do diretório projeto; • Os códigos fonte (.c – source file) e cabeçalhos (.h – header files) ficam armazenados na pasta principal do projeto. • O arquivo do programa executável não pode ser editado, o que nós podemos editar são os arquivos do do código fonte. 42 CIn.ufpe.br Conhecendo o Code::Blocks 43 CIn.ufpe.br Compilando e Executando 44 clicar neste botão para compilar e executar o programa Se houver erros de sintaxe, eles são reportados em vermelho. CIn.ufpe.br Compilando e Executando • Ao corrigir e executar novamente o programa o console se abre executando os passos do programa: 45 CIn.ufpe.br Depurando o Código • Clicar com o direito na linha para adicionar ou remover breakpoints (pontos de parada na execução para investigação); • Clicar na seta vermelha (Debug/Continue); • Clicar com o direito sobre uma variável e depois em “Watch ...” 46 Basta clicar neste botão para depurar em vez de executar o programa CIn.ufpe.br Depurando o Código Executar até o cursor Ir para a próxima linha Entrar na função Sair da função • Executar o programa passo-a-passo clicando nos botões indicados abaixo: 47 CIn.ufpe.br Depurando o Código • Vamos depurar linha a linha do programa “Cubo” colocando um breakpoint na primeira linha e executando cada linha. 48 Executou a linha 5: • Inicializou as variáveis inteiras num e cubo com valores aleatórios; • Abriu o terminal de entrada/saída. CIn.ufpe.br Depurando o Código • Vamos depurar linha a linha do programa “Cubo” colocando um breakpoint na primeira linha e executando cada linha. 49 Executou a linha 6: • Imprimiu no terminal a frase “Cubo de um numero”, pulando duas linhas em seguida. CIn.ufpe.br Depurando o Código • Vamos depurar linha a linha do programa “Cubo” colocando um breakpoint na primeira linha e executando cada linha. 50 Executou a linha 7: • Imprimiu no terminal a frase “Digite um numero: ”. CIn.ufpe.br Depurando o Código • Vamos depurar linha a linha do programa “Cubo” colocando um breakpoint na primeira linha e executando cada linha. 51 Executou a linha 8: • O usuário digitou as teclas “2” e “Enter”. • O número “2” foi lido. • Ele foi escrito na variável “num”. CIn.ufpe.br Depurando o Código • Vamos depurar linha a linha do programa “Cubo” colocando um breakpoint na primeira linha e executando cada linha. 52 Executou a linha 9: • Calculou 23 e escreveu na variável “cubo”. CIn.ufpe.br Depurando o Código • Vamos depurar linha a linha do programa “Cubo” colocando um breakpoint na primeira linha e executando cada linha. 53 Executou a linha 10: • Pulou uma linha e imprimiu no terminal o resultado desejado, “Cubo de 2 = 8”. CIn.ufpe.br Depurando o Código • Vamos depurar linha a linha do programa “Cubo” colocando um breakpoint na primeira linha e executando cada linha. 54 Executou a linha 11: • Reconheceu o fim da sequencia de comandos do programa principal. CIn.ufpe.br Depurando o Código • Vamos depurar linha a linha do programa “Cubo” colocando um breakpoint na primeira linha e executando cada linha. 55 Executou a linha 12: • Encerrou o programa e fechou o terminal. CIn.ufpe.br Atividade • Consultar os livros • Livro do Jaime Evaristo – Disponível gratuitamente em http://user.das.ufsc.br/~jomi/das5334/Livro%20Aberto%20Aprendendo %20a%20Programar%20naLinguagem%20C.pdf – Estudar o primeiro capítulo e a metade do segundo capítulo • Fazer odownload de uma das IDEs (link no slide anterior) – Instalar – Reescrever os códigos do livro de Evaristo que conseguir. – Executar e depurar (passo-a-passo) cada um deles para entender seu funcionamento. 56
Compartilhar