Your SlideShare is downloading. ×
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
599026
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

599026

245

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
245
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Prof. Claudio Cesar de Oliveira Cordeiro claudio_cesar_cordeiro@yahoo.com.br Jul 2013 Capítulo 01 Introdução ao C++ Linguagem de Programação I 001
  • 2. claudio_cesar_cordeiro@yahoo.com.br . ApresentaçãoProfessor Claudio Cesar de Oliveira Cordeiro ► Formação Profissional ► Engenheiro Eletricista – Modalidade Eletrônica – Universidade Gama Filho ► Pós-Graduação em Gestão da Excelência Empresarial – UNIFOA ► Experiência Profissional ► Trabalhou na Embratel durante 31 anos em várias áreas (1977 a 2008) ► Aposentou-se em 02 de dezembro de 2008 ► Manteve em atividade a Empresa de Treinamento Multimídia Informática (1990 a 1994) ► Experiência Acadêmica ► Curso de Didática do Ensino Superior pela Fundação MUDES ► Professor da Estácio desde outubro de 2003 ► Instrutor em vários cursos na Embratel ► Professor da extinta Multimídia Informática Ltda ► Disciplinas Ministradas nos Campus Centro Rio e São Gonçalo (2003 a 2011) ► Qualidade e Produtividade ► Gestão de Projeto (com Ênfase no PMI – Project Management Institute) ► Disciplinas Ministradas no Campus Niterói em 2012 e 2013 ► Algoritmos ► Linguagem de Programação I – Linguagem C e C++ ► Lógica de Programação ► Materiais Elétricos 002
  • 3. 003claudio_cesar_cordeiro@yahoo.com.br . Introdução ao C++ Cap. 01 - ÍndiceProf. Claudio Cesar de Oliveira Cordeiro ► Conceitos Básicos da Informática ► Hardware & Software ► Comunicação ► Sistemas de Numeração ► Decimal – Binário – Octal - Hexadecimal ► Sistema de Numeração Binário - Bits e Bytes ► Conversão Sistema Binário ► Hexa e Vice-Versa ► Múltiplos do Byte – Tabela IEC e Sistema Internacional SI ► Tipos de Softwares ► Sistemas Operacionais ► Programas Aplicativos ► Linguagens de Programação ► Tipos de Linguagens ► Linguagem de Alto Nível ► Linguagem de Baixo Nível, Máquina, Binária ► Programas Tradutores ► Interpretadores ► Compiladores ► Exemplos de Linguagens de Programação ► A Origem do C++ ► O Criador ► Paradigmas de Programação ► Linguagem de Programa Não-Estruturada ► Linguagem de Programa Estruturada ► Programação Orientada a Objetos (POO, OOP) ► O Compilador Dev-C++ ► Apresentando o Dev-C++ ► Iniciando a Digitação de um Programa Fonte Novo ► Programa Fonte ► Programa Compilado ► Programa em Linguagem de Máquina ou Binária ► Apresentando Número de Linha no Editor do Dev-C++ ► Configuração de Cores no Editor do Dev-C++ Continuação... ► Execução de um Programa C++ começa na Função main () ► Inclusão de Bibliotecas com o Comando #include ► Função main () ► Função Obrigatória num Programa C++ ► Execução de um Programa C++ começa na Função main () ► Atenção com o Compilador Dev-C++ ► Cuidado ao Copiar e Colar ► Mudança de Linha e Caracteres de Escape ► Tabela Caracteres de Escape ou Códigos de Barra Invertida ► O Comando system Dando Pausa no Sistema Operacional ► O Comando getch() Dando Pausa no Programa ► Estrutura Básica de um Programa C++ ► O Comando cout do C++ ► Declaração de Vairáveis ► Atribuição de Valores às Variáveis ► Overload (Sobrecarga) do Caractere de Inserção do cout ► O Comando cin do C++ ► As 7 Primeiras Regras Básicas Para Programar no C++ ► Regra 01 - O melhor Compilador ► Regra 02 - Simplifique, Não Complique! ► Regra 03 - Não se esqueça das Bibliotecas ► Regra 04 - Nunca se esqueça do namespace ► Regra 05 - Nunca se esqueça do ponto e vírgula ► Regra 06 - C++ é case sensitive - Comandos em minúsculas ► Regra 07 - NUNCA DESISTA! ► Logs de Erro do Dev-C++ ► Warnings (Alertas, Avisos) na Compilação com o Dev-C++
  • 4. 004claudio_cesar_cordeiro@yahoo.com.br . Conceitos Básicos da Informática Linguagem de Programação I - C++
  • 5. 005claudio_cesar_cordeiro@yahoo.com.br . . Hardware e Software Linguagem de Programação I - C++
  • 6. 006claudio_cesar_cordeiro@yahoo.com.br HW & SW . Linguagem de Programação I - C++ Hardware + Software + Firmware = Sistema Computacional Hardware (HW) ► Toda a parte física do sistema Software (SW) ► São os programas de um sistema Firmware (FW) ► SW armazenado numa ROM
  • 7. 007claudio_cesar_cordeiro@yahoo.com.br . Comunicação . Linguagem de Programação I - C++
  • 8. 008claudio_cesar_cordeiro@yahoo.com.br . .Linguagem de Programação I - C++ Para que haja comunicação entre dois elementos precisamos de ... ... uma linguagem!
  • 9. claudio_cesar_cordeiro@yahoo.com.br A Linguagem de Programação permite a comunicação do homem com a máquina. Não adianta xingar, nem chutar! Tem que entender!!! .Linguagem de Programação I - C++ 009
  • 10. 010claudio_cesar_cordeiro@yahoo.com.br . Sistemas de Numeração . Linguagem de Programação I - C++
  • 11. 011claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Sistema de Numeração Decimal Base: Dez
  • 12. 012claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Sistema de Numeração Binário Base: Dois ou Binária Computadores só reconhecem dois algarismos: zero e um!
  • 13. 013claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Sistema de Numeração Octal Base: Oito
  • 14. 014claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Sistema de Numeração Hexadecimal Base: Dezesseis, Hexadecimal, Hexa ou Hex 10 11 12 13 14 150 1 2 3 4 5 6 7 8 9
  • 15. 015claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Regras Básicas dos Sistemas de Numeração
  • 16. 016claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Regra 1: Um número pode ser escrito em qualquer Base, desde que a mesma seja maior do que dois. Número 10, na Base Decimal, escrito nas Bases 2, 8 e 16
  • 17. 017claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Regra 2: Convenciona-se que a partir de agora os números devem ser escritos com índice da base (subscrito), exceto quando se referir à base decimal. Atenção! Mesmo convencionado que não precisamos explicitar a base de um número decimal, é de bom tom o fazermos. Assim, evitamos dúvidas. Veja: 10 é dez na base dez ou um e zero na binária? Quem escreveu esqueceu de informar que a base é binária ou é mesmo um número decimal? Melhor prevenir do que remediar! Número 10, na Base Decimal, escrito nas Bases 2, 8 e 16
  • 18. 018claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Regra 3: O C++ diferencia números entre bases diferentes usando prefixos nos números! Atenção! Não se esqueça! Número decimal NUNCA tem zero à esquerda! Número Octal é sempre escrito COM ZERO à esquerda! Número Hexadecimal é sempre escrito com 0x à esquerda! Número 123 na Base Octal 0 0x Número 123 na Base Hexa Número 123 na Base DecimalZero Zero x Sem nada
  • 19. 019claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Sistema de Numeração Decimal
  • 20. 020claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Um Número Escrito na Base 10 abc = (a x B2) + (b x B1) + (c x B0) Generalizando...
  • 21. claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Contando em Decimal – Algarismos Arábicos Decimais 1 2 3 0 5 6 7 4 9 0 8 1 Contando de 0 a 10 + 1 + 1 + 1 + 1 + 1 + 1 ........... 11 12 13 10 15 16 17 14 19 0 18 2 Contando de 10 a 20 + 1 + 1 + 1 + 1 + 1 + 1 ........... Note que 10 é a Base de qualquer sistema de numeração. Não é mágica! É Matemática! 021
  • 22. 022claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Sistema de Numeração Binário – Bits e Bytes
  • 23. 023claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Um Número Escrito na Base 2 – Base Binária b2b1b0 = (b2 x B2) + (b1 x B1) + (b0 x B0) Generalizando... Assim, o número binário 1102 é igual a 610 (seis) no decimal!
  • 24. claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Contando em Binário – Os “algarismos” são 0 e 1 1 0 1 0 Contando de 0 a 7 + 1 + 1 + 1 + 1 1 1 001 101 011 111 Contando de 8 a 16 0001 1001 0101 1101 0011 1011 0111 1111 00001 ........... .......................... 024
  • 25. 025claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Contando em Binário – Os “algarismos” são os Bits! Bits b3 b2 b1 b0 0 1 1 0 1 1 Bits b3 b2 b1 b0 1 0 1 1 1 0 1 1 1 1 0 0 D 1 2 3 0 D 5 6 7 4 Bit – Binary Digit – Dígito Binário – Só pode ser zero ou um!
  • 26. 026claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Contando em Binário – De 0 a 16 Bits b3 b2 b1 b0 Bits D 9 10 80 0 01 0 0 11 0 1 01 110 1 11 b3 b2 b1 b0 D 13 14 121 0 01 1 0 11 1 1 01 151 1 11 160 0 001b0 – Bit Zero – Bit menos significativo.
  • 27. 027claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Byte – Binary Term – Termo Binário b7 b6 b5 b4 0 0 00 0 0 00 1 1 11 1 1 11 b3 b2 b1 b0 Deci 1 254 00 0 00 0 0 10 1 1 01 2551 1 11 Byte Bits Nybble 0Nybble 1 Byte é conjunto de 8 bits Nybble é conjunto de 4 bits Um byte tem dois nybbles Bit MAIS significativo. Bit menos significativo.
  • 28. 028claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Sistema Hexadecimal
  • 29. claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Contando em Hexadecimal – Algarismos Arábicos Decimais + Letras! 1 2 3 0 5 6 7 4 9 A 8 Contando de 0 a 10 + 1 + 1 + 1 + 1 + 1 + 1 ........... C D D B 0 1 F FF Contando de 11 a 255 + 1 + 1 + 1 + 1 + 1 + 1 ........... 1 1 EF DF Note que 10 é a Base de qualquer sistema de numeração. Não é mágica! É Matemática! 1016 é a Base do Hexadecimal (16). 029
  • 30. 030claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Convertendo Binário em Hexadecimal
  • 31. 031claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ b7 b6 b5 b4 b3 b2 b1 b0 Bits Para Converter Hexadecimal em Binário F A 1 1 1 1 1 0 1 0 = 25010
  • 32. 032claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Para Converter Binário Menor que um Nybble em Hexadecimal 1 1 0 1 1 00 1º Pass0 - Se número binário com menos de 4 bits, completar com zeros à esquerda. 2º Pass0 – Converter agora o binário para Hexa. 01102 é 416 1 1 00 4
  • 33. 033claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Para Converter Binário Menor que dois Nybbles em Hexadecimal 1 1 0 1º Pass 0 - Se número binário com mais de 4 bits e menor do que 8 bits, completar com zeros à esquerda nyblle a nybble até completa um byte inteiro. 2º Pass0 – Converter agora o binário de quatro em quatro bits para Hexa. 416 1 1 0 1 1 0 1 1 000 3
  • 34. 034claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Convertendo Hexadecimal em Binário
  • 35. 035claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ b7 b6 b5 b4 b3 b2 b1 b0 Bits Caso 1 - Para Converter Hexadecimal em Binário F A 1 1 1 1 1 0 1 0 = 25010 Atenção! Converter sempre de 4 em 4 bits. O número hexa acima tem ambos os nybbles completos, assim é converter direto para binário.
  • 36. 036claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ b7 b6 b5 b4 b3 b2 b1 b0 Assim, 1116 = 000100012 = 100012 = 1710 Caso 2 - Para Converter Hexadecimal em Binário 1 116 0 0 0 1 0 0 0 1 = 1710 Atenção! Converter sempre de 4 em 4 bits. Se número hexa tiver ny bbles com menos de 4 bits em binário, completar com zeros à esquerda.
  • 37. 037claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Múltiplos do Byte
  • 38. 038claudio_cesar_cordeiro@yahoo.com.br . Fonte ► http://pt.wikipedia.org/wiki/Byte Linguagem de Programação I - C++ Múltiplos do Byte
  • 39. 039claudio_cesar_cordeiro@yahoo.com.br . Tipos de Software . Linguagem de Programação I - C++
  • 40. 040claudio_cesar_cordeiro@yahoo.com.br . Tipos de Softwares Sistemas Operacionais Programas Aplicativos Linguagens de Programação Sistemas Operacionais são programas que controlam todo o HW e todo os outros SW do sistema de computador. Linguagens de Programação permite que o homem escreva comandos para que o computador possa executá-los. Programas Aplicativos são os desenvolvidos para uma determinada aplicação. Exemplo: para escrever textos usamos o MS (MicroSoft) Word. Para criarmos planilhas eletrônicas usamos o MS Excel e para esta apresentação na tela estamos usando o aplicativo MS PowerPoinT (PPT). . Linguagem de Programação I - C++
  • 41. 041claudio_cesar_cordeiro@yahoo.com.br . Tipos de Linguagens . Linguagem de Programação I - C++
  • 42. 042claudio_cesar_cordeiro@yahoo.com.br * BASIC foi muito utilizado na década de 80. Hoje temos o Visual Basic da Microsoft. . Exemplo Programa em Linguagem de Alto Nível 10 Cls 20 Print “Alô, mundo!” 30 End Linguagem BASIC de Alto Nível BASIC é uma sigla! Beginners All-purpose Standard Information Code Linguagem de Alto Nível é aquela em que os comandos estão escritos numa linguagem que é fácil para o homem entender. Cls acima vem do inglês Clear Screen, limpar a tela. Print imprime na tela um texto, uma variável ou expressão. End é fim. Este programinha escrito pelo programador é chamado de Programa Fonte, ou Código Fonte. Alô, mundo! Linguagem de Programação I - C++
  • 43. 0423claudio_cesar_cordeiro@yahoo.com.br . Exemplo Programa em Linguagem de Baixo Nível 00011010 11001100 00101100 00110011 00101111 00000000 Linguagem de Baixo Nível Linguagem de Máquina é a linguagem de mais baixo nível que temos. É a Linguagens dos Zeros (0) e Uns (1)! Linguagem de Baixo Nível é aquela em que os comandos estão escritos numa linguagem que a máquina entende; e ela só entende zeros (0) e uns (1). Linguagem de Máquina ou Linguagem Binária é tremendamente difícil para o homem entender. Então deve haver algum programa que converta a Linguagem de Alto Nível em Linguagem de Máquina, certo? Sim! São os Programas Tradutores. Este programinha que a CPU entende é chamado de Programa em Linguagem de Máquina, Código Binário e ainda Código EXEcutável (são os programas .exe). Alô, mundo! . Linguagem de Programação I - C++
  • 44. 044claudio_cesar_cordeiro@yahoo.com.br . Tipos de Tradutores de Linguagens de Programação Interpretadores Compiladores Interpretadores As instruções do Programa Fonte são traduzidas em código binário e executadas imediatamente. Compiladores As instruções do Programa Fonte são traduzidas, mas não são executadas imediatamente! É gerado um novo programa com as instruções convertidas na Linguagem de Máquina, que posteriormente será executado; é o famoso .exe. SO – Sistema Operacional (OS – Operating System) Linguagem de Programação I - C++ Portugol C++
  • 45. 045claudio_cesar_cordeiro@yahoo.com.br . Exemplos de Linguagens de Programação . Linguagem de Programação I - C++
  • 46. 046claudio_cesar_cordeiro@yahoo.com.br http://pt.wikipedia.org/wiki/Anexo:Lista_de_linguagens_de_programa%C3%A7%C3%A3o Algumas Linguagens de Programação .Linguagem de Programação I - C++
  • 47. 047claudio_cesar_cordeiro@yahoo.com.br . Origem do C++ . Linguagem de Programação I - C++
  • 48. 048claudio_cesar_cordeiro@yahoo.com.br Mais detalhes ► http://pt.wikipedia.org/wiki/C%2B%2B C++ C++ ► O C++ (em português lê-se "cê mais mais") é uma linguagem de programação multi-paradigma e de uso geral. A linguagem é considerada de nível médio ou intemediário, pois combina características de linguagens de alto e baixo níveis. Desde os anos 90 é uma das linguagens comerciais mais populares. ► Bjarne Straustrup desenvolveu o C++ (originalmente com o nome C with Classes (C com Classes) em 1983 no Bell Labs como um adicional à linguagem C. Novas características foram adicionadas com o tempo, como funções virtuais, sobrecarga de operadores, herança múltipla, gabaritos e tratamento de exceções. Após a padronização ISO realizada em 1998 e a posterior revisão realizada em 2003, uma nova versão da especificação da linguagem foi lançada em setembro de 2011, conhecida informalmente como C++11. ► O porquê do nome C++ - Durante sua fase inicial de desenvolvimento, a linguagem era chamada "novo C", "C84" ou ainda "C com classes". O termo "C++" é creditado a Rick Mascitti, e foi utilizado pela primeira vez em dezembro de 1983. Ele é uma referência ao operador de incremento ++, significando um incremento, um acréscimo (uma evolução) à linguagem C. ► Bjarne Stroustrup (11 de junho de 1950) é dinamarquês, cientista da computação e professor catedrático da Universidade do Texas. É conhecido como o Pai da Linguagem de Programação I - C++. Bjarne Stroustrup A Linguagem C faz com que dar um tiro no pé seja fácil. A Linguagem C++ torna isso mais difícil, mas quando nós o fazemos arrebentamos com a perna toda. Bjarne Stroustrup Linguagem de Programação I - C++ ... e o Criador! A origem ... Leitura Complementar ► Apostilas indicadas
  • 49. 049claudio_cesar_cordeiro@yahoo.com.br . Paradigmas de Programação . Linguagem de Programação I - C++
  • 50. 050claudio_cesar_cordeiro@yahoo.com.br http://pt.wikipedia.org/wiki/Paradigma_de_programa%C3%A7%C3%A3o Paradigmas de Programação do C e do C++Linguagem de Programação I - C++ Paradigma de Programação, simplificando, é a forma ou método com que o programador escreve os programas.
  • 51. 051claudio_cesar_cordeiro@yahoo.com.br . Linguagem de Programação Não- Estruturada . Linguagem de Programação I - C++
  • 52. 052claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Programação Não- Estruturada é uma forma (paradigma) de programação de computadores que permite que os programas possam usar estruturas de desvio incondi- cionais, além de estruturas de sequência, decisão e repetição. As famosas estruturas de desvio incondicional mais conhecidas são GOTO, GOSUB, ONGOTO, ONGOSUB que eram utilizadas na Linguagem BASIC da década de 80. 10 Cls 20 Print “Cuidado!” 30 Goto 50 40 Print “Alô, Mundo!” 50 End Neste pequeno programa em BASIC a mensagem “Alô, Mundo!”, nunca será mostrada devido ao desvio incondicinal para o FIM! Problemas da Programação Não-Estruturada! Aqui fica fácil ver o problema, mas num programa de centenas ou milhares de linhas não é tão simples assim! Programação Não-Estruturada
  • 53. 053claudio_cesar_cordeiro@yahoo.com.br . Linguagem de Programação Estruturada . Linguagem de Programação I - C++
  • 54. 054 . . Linguagem de Programação I - C++ Programação Estruturada é uma forma (paradigma) de programação de computadores que estabelece que todos os programas podem ser escritos usando-se apenas três estruturas básicas: sequência, decisão e repetição. Estrutura de Sequências de Comandos Estruturas de Decisão Estruturas de Repetição #include <iostream> int main () { cout << “Alô Mundo!”; return 0; } if switch for while do while Não se usa estruturas de desvio incondicional tais como GOTO ou GOSUB na Linguagem Estruturada! As Linguagens C e C++ são Linguagens Estruturadas! Programação Estruturada claudio_cesar_cordeiro@yahoo.com.br 1 2 3
  • 55. 055claudio_cesar_cordeiro@yahoo.com.br . Programação Orientada a Objetos . Linguagem de Programação I - C++
  • 56. 056claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ No Paradigma de Programação Orientada a Objetos (POO) ou Object Oriented Programming (OOP), as unidades de software são tratadas como objetos. Por exemplo: um comando seria um objeto. A Linguagem C não suporta POO, mas o C++ sim! Programação Orientada a Objetos Nossa Disciplina Linguagem de Programação I não contempla a Programação Orientada a Objetos, portanto, não será alvo de nosso estudo! Aos interessados no assunto, sugiro o excelente livro “Programação Orientada a Objetos com C++” de André Duarte Bueno – Editora Novatec Alguns Conceitos da POO: ► Abstração ► Objeto ou Instância ► Identidade do Objeto ► Classes ► Atributos (Propriedades/Variáveis) ► Métodos (Funções) ► Herança (Heriditariedade) ► Polimorfismo ► UML – Unified Modeling Language
  • 57. 057claudio_cesar_cordeiro@yahoo.com.br . O Compilador Dev-C++ . Linguagem de Programação I - C++
  • 58. Apresentando o Compilador Dev-C++ 5.0 beta 9.2 (4.9.9.2 ) claudio_cesar_cordeiro@yahoo.com.br http://www.bloodshed.net/devcpp.html O Compilador DEV-C++ freewareLinguagem de Programação I - C++ 058
  • 59. Iniciando a Digitação de um Programa Fonte Novo claudio_cesar_cordeiro@yahoo.com.br http://www.bloodshed.net/devcpp.html O Compilador DEV-C++ freewareLinguagem de Programação I - C++ 059 Programa Fonte é o programa original escrito em Linguagem de Alto Nível pelo programador! Os comandos são fáceis de serem entendidos, afinal são palavras e acrônimos em Inglês.
  • 60. Compilador Transforma o Programa Fonte num Programa em Linguagem de Máquina claudio_cesar_cordeiro@yahoo.com.br http://www.bloodshed.net/devcpp.html O Compilador DEV-C++ freewareLinguagem de Programação I - C++ 060 Programa Fonte em C++. Arquivo com a extensão .cpp no Compilador Dev-C++. Programa Objeto, Programa em Linguagem de Máquina ou Binária com a extensão .exe, que pode ser executado pelo Sistema Operacional Windows. Compilador Fonte Executável Alto Nível Baixo Nível
  • 61. Apresentando o Número das Linhas do Programa Fonte e Tamanho das Letras claudio_cesar_cordeiro@yahoo.com.br Veja link para download do Dev-C++ ► http://www.bloodshed.net/devcpp.html Configurando o DEV-C++Linguagem de Programação I - C++ 061 Os números das linhas que aparecem no Editor não fazem parte do programa, mas ajudam pra caramba na hora de se ”debugar” o programa! Debugging Aids – Ajudas (Recursos) para se debugar o programa. “Debugar” é procurar por erros do programa.
  • 62. Iniciando o Compilador Dev-C++ Exemplo 01 – O Primeiro Programa Ninguém Esquece! 062claudio_cesar_cordeiro@yahoo.com.br . Linguagem de Programação I - C++ #include <iostream> //Inclui a Biblioteca iostream using namespace std; //Usaremos grupo lógico (namespace) padrão int main () //Função principal do C++ { //Início da função main. system ("PAUSE > null"); //Pausa. Para seguir pressionar qq tecla return 0; //Retorno com valor zero, tudo OK } Após iniciar o Compilador Dev- C++, para criarmos um novo programa C++, devemos clicar em: ►File (Arquivo) ►New (Novo) ►Source File (Arquivo Fonte). Podemos também pressionar Ctrl+N ou clicar no Botão Novo. Em seguida devemos digitar nosso primeiro programinha ao lado. Digite estas 7 linhas abaixo EXATAMENTE como está aqui neste quadro. Não precisa digitar as linhas de comentário.
  • 63. Iniciando o Compilador Dev-C++ Exemplo 01 – O Primeiro Programa Ninguém Esquece! 063claudio_cesar_cordeiro@yahoo.com.br . Linguagem de Programação I - C++ AS cores são configuráveis no Dev-C++! ► Menu Ferramentas ► Opções do Editor ► Sintaxe Para compilar o programa fonte e logo em seguida executar o programa compilado, devemos pressionar a tecla: F9! Atenção! A execução de um programa C++ começa na Função main ()!
  • 64. Iniciando o Compilador Dev-C++ Exemplo 01 – O Primeiro Programa Ninguém Esquece! 064claudio_cesar_cordeiro@yahoo.com.br . Linguagem de Programação I - C++ Mais um vez! Para compilar o programa fonte e logo em seguida executar o programa compilado, devemos pressionar a tecla: F9! O nosso primeiro programinha na verdade não faz nada, mas FUNCIONA! Este é o resultado da execução do Programa Compilado. Uma linda tela preta!
  • 65. Exemplo 01 – Listagem Digitar no Editor do Dev-C++ Primeiro Programa em C++ 065claudio_cesar_cordeiro@yahoo.com.br Podemos ter outras funções no programa, mas a main () é obrigatória! Linguagem de Programação I - C++ Digite estas linhas no Dev- C++. Não esqueça do ponto e vírgula! Não esqueça do ponto e vírgula! Não esqueça os três pontos e vírgulas!
  • 66. Exemplo de Programa C++ Exemplo 01 – O Primeiro Programa Ninguém Esquece! 066claudio_cesar_cordeiro@yahoo.com.br Este exemplo mostra a estrutura básica de um programa em C++. Não faz nada ainda, pois só inserimos o comando system. Importante notar a Biblioteca iostream no início e a função principal main () dentro da qual os comandos serão inseridos (entre as chaves). Após a compilação pelo Dev-C++ não foram encontrados erros nem warnings (avisos, advertências). A Biblioteca iostream contém os principais comandos de entrada e saída de dados do C++, entre outros. Para incluirmos uma biblioteca usamos o comando #include <nome_da_biblioteca>. Compilar e Executar (F9) Executar (Ctrl+F10) Compilar (Ctrl+F9) . Linguagem de Programação I - C++ Dev-C++ na versão Inglês
  • 67. Exemplo 01 – Listagem para Dev-C++ Necessária para o comandos system, cin, cout e endl. Biblioteca e Namespace 067claudio_cesar_cordeiro@yahoo.com.br As chaves delimitam o início e o fim de um bloco de comandos, no caso o da a função main (). Linguagem de Programação I - C++ Grupo Lógico (namespace) necessário para o comando cin e cout. Função OBRIGATÓRIA num programa C++. A execução de um programa C++ começa em main ()! Dá uma pausa no Sistema Operacional. Se a função main () chegou até e aqui e retornou o valor inteiro (int) zero, tudo OK na execução do programa. Início de main () Fim de main ()
  • 68. Exemplo de Programa C++ Executando o Primeiro Programa Que Ninguém Esquece! 068claudio_cesar_cordeiro@yahoo.com.br Para somente executar o programa pressionamos Ctrl+F10 ou clicamos no ícone de executar do Compilador Dev-C++. Aparece somente uma tela preta e o cursor piscando. Compilar e Executar (F9) Executar (Ctrl+F10) Compilar (Ctrl+F9) . Linguagem de Programação I - C++ Como esperado, somente uma tela! preta!!
  • 69. Exemplo de Programa C++ Exemplo 02 - O Primeiro Programa – Agora com Mensagem na Tela 069claudio_cesar_cordeiro@yahoo.com.br Para enviar uma mensagem para a tela usamos o comando cout. Veja que usamos o símbolo << de inserção. Compilar e Executar (F9) Executar (Ctrl+F10) Compilar (Ctrl+F9) Nota Interessante: Apesar de digitarmos duas vezes o sinal de menor, o compilador entende os dois como somente um caractere de inserção. . Atenção! cout é objeto do C++ e está contido na Biblioteca <iostream> e será usado no namespace std (padrão) do C++. Linguagem de Programação I - C++
  • 70. Exemplo de Programa C++ Exemplo 02 - O Primeiro Programa com Mensagem na Tela 070claudio_cesar_cordeiro@yahoo.com.br Note que a mensagem deve estar entre aspas duplas. Tudo que estiver dentro das aspas, no comando cout, será mostrado na tela. Compilar e Executar (F9) Executar (Ctrl+F10) Compilar (Ctrl+F9) . Linguagem de Programação I - C++
  • 71. 071claudio_cesar_cordeiro@yahoo.com.br . Atenção com o Compilador Dev-C++ . Linguagem de Programação I - C++
  • 72. Dev-C++ não compila! Janela de programa anterior aberta! 072 Compilar e Executar (F9) Executar (Ctrl+F10) Compilar (Ctrl+F9) claudio_cesar_cordeiro@yahoo.com.br Janela de Executável Aberta . Linguagem de Programação I - C++ Às vezes quando pressionamos F9 para compilar e executar, o Dev-C++ não responde. Verifique se não há um ícone da janelinha do DEV-C++ da última execução aberta na Barra de Tarefas. Se houver, precisamos fechá-la.
  • 73. 073claudio_cesar_cordeiro@yahoo.com.br . Cuidado ao Copiar do PPT, ou da Internet, e colar no Editor do Compilador Dev- C++ . Linguagem de Programação I - C++
  • 74. #include <iostream> using namespace std; int main () { cout << "Meu Primeiro Programa Funciona!!!"; cout << “Pressione qq tecla para terminar.”; system ("PAUSE > null"); return 0; } Exemplo 03 – Listagem para Dev-C++ Agora duas mensagens! 074claudio_cesar_cordeiro@yahoo.com.br . Linguagem de Programação I - C++
  • 75. Exemplo 03 – Listagem Copiada do PPT para Dev-C++ ATENÇÃO!!! O segundo comando cout FOI DIGITADO NO PPT. Quando copiamos no Dev-C++ note que as aspas ficaram DIFERENTES e a mensagem ficou na cor preta! Quando compilamos o programa, dá erro In function “int main ()’: no comando cout! Solução: no DEV-C++ redigite as aspas e aí funciona. Cuidado com o Copiar e Colar! Detalhe: isto nem sempre acontece, mas fiquemos atentos! Erro ao Copiar do PowerPoinT (PPT) 075claudio_cesar_cordeiro@yahoo.com.br . Linguagem de Programação I - C++ Atenção! Mensagem do comando cout na cor preta significa aspas duplas erradas!
  • 76. 076claudio_cesar_cordeiro@yahoo.com.br . Mudança de Linha Caracteres de Escape . Linguagem de Programação I - C++
  • 77. Enviando Mensagem Para a Tela - cout Exemplo 03 - O Primeiro Programa – Mais Mensagens na Tela 077 Compilar e Executar (F9) Executar (Ctrl+F10) Compilar (Ctrl+F9) claudio_cesar_cordeiro@yahoo.com.br . Linguagem de Programação I - C++ Quando o programa for executado, veja que as mensagens ficarão na mesma linha! Vamos fazer com que as mensagens fiquem em linha diferentes.
  • 78. 078 Para mudarmos de linha usamos um caractere especial chamado Caractere de Escape ou Código de Barra Invertida: n dentro da mensagem do cout. claudio_cesar_cordeiro@yahoo.com.br Exemplo 04 - Mais Mensagens na Tela em Linhas Diferentes Caracteres Especiais de Escape . Linguagem de Programação I - C++ Nota: n vem de new line ► nova linha.
  • 79. 079 Podemos também fazer mudança de linha usando o modificador endl do comando cout. endl (end line) faz o mesmo que n dentro da mensagem como visto no exemplo anterior. claudio_cesar_cordeiro@yahoo.com.br Exemplo 05 - Mais Mensagens Usando endl Caractere Especial de Escape – Mudança de Linha Um endl no comando cout provoca uma mudança de linha. . Linguagem de Programação I - C++
  • 80. Códigos de Barra Invertida ou Caracteres de Escape Estes códigos (barra invertida + caractere) são usados para inserir caracteres de controle ou especiais não podem ser facilmente inseridos via teclado. São muito usados com os comandos cout (C++). Códigos de Escape 080claudio_cesar_cordeiro@yahoo.com.br ATENÇÃO! Apesar de digitarmos dois caracteres, para o C++ são apenas UM! Linguagem de Programação I - C++
  • 81. 081claudio_cesar_cordeiro@yahoo.com.br . O Comando system para dar pausa do Sistema Operacional . Linguagem de Programação I - C++
  • 82. 082claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Exemplo 06 – O Comando system Note que na linha 17 o comando system foi modificada de system (“PAUSE > null”); para system (“PAUSE”);. O system sem “... > null”); envia sua mensagem de parada na tela. Veja que aparecem duas mensagens avisando para prosseguir. A da linha 14 foi o programador quem definiu, mas a da linha 17 é o comando system quem envia, sem interferência do programador. Também funcionam!
  • 83. 083claudio_cesar_cordeiro@yahoo.com.br . O Comando getch() e a pausa do Programa . Linguagem de Programação I - C++
  • 84. 084 Há programadores profissionais que condenam a prática de dar pausa no SO usando o comando system, devido a vários efeitos indesejados e consumir muito recurso da máquina. Uma outra forma de dar pausa (no programa e não no SO) é usar o comando getch(), que precisa da biblioteca conio.h. claudio_cesar_cordeiro@yahoo.com.br Pausa no Programa Usando getch() . Linguagem de Programação I - C++ Exemplo 07 – Pausa com o Comando getch()
  • 85. 085claudio_cesar_cordeiro@yahoo.com.br . Estrutura Básica de um Programa em C++ . Linguagem de Programação I - C++
  • 86. 086claudio_cesar_cordeiro@yahoo.com.br Passo a Passo na Estrutura Básica de um Programa em C++ - Para Iniciantes! DE NOVO! NOVAMENTE! OUTRA VEZ! Pausa no Programa Usando getch() . Linguagem de Programação I - C++ 1º - Incluir biblioteca(s) 2º - Usar namespace (grupo lógico) padrão (std) 3º - A Função obrigatória do C++ 5º - Dar uma pausa no SO ou melhor, usar o getch() 6º - Retorno da Função main(). Retorna um número inteiro 4º - Abre Chavae ► Início da Função main(). 7º - Fecha Chave ► Fim da Função main()
  • 87. 087claudio_cesar_cordeiro@yahoo.com.br . O Comando cout do C++ . Linguagem de Programação I - C++
  • 88. claudio_cesar_cordeiro@yahoo.com.br . Lógica de Programação Caracteres de Inserção de Dados << >> cout << var; cout << “a”; cout vem de console out. Saída para o console, no caso o vídeo! cout << “texto”n; 1 2 3 Este comando 2 dá erro na compilação. Por quê? 088
  • 89. 089 O comando cout envia para a tela uma mensagem escrita entre aspas duplas, uma mudança de linha (n ou endl), Caracteres de Escape, tipo: n, a, t, ’, ” e outros e envia também outros dados e informações que veremos a seguir. claudio_cesar_cordeiro@yahoo.com.br Exemplo 07 - O Comando cout enviando mensagens para a tela . Linguagem de Programação I - C++ Usando Comando cout
  • 90. 090claudio_cesar_cordeiro@yahoo.com.br . Declaração de Variáveis Atribuição de Valores às Variáveis . Linguagem de Programação I - C++
  • 91. 091claudio_cesar_cordeiro@yahoo.com.br Exemplo 08 - Enviando conteúdo de variáveis para a tela – Parte 1/2 Estudaremos as variáveis com detalhes mais adiante. Linguagem de Programação I - C++ Aproveitemos este exemplo para apresentar dois novos conceitos: Declaração de Variáveis (linhas 12 e 13) e Atribuição de Valor às Variáveis (linhas 14 e 15). Importante pra cachorro! E pra gente também! O sinal de igual (=) NÃO É SINAL DE IGUAL NO C++! É o Operador de ATRIBUIÇÃO! Usando Comando cout
  • 92. 092claudio_cesar_cordeiro@yahoo.com.br . Linguagem de Programação I - C++ Aproveitando ainda o exemplo apresentamos os dois primeiros Operadores Aritméticos: Soma (+) e Multiplicação (*). Note que dentro da mensagem da linha 27 x + y está em vermelho, será mostrado na tela o texto x + y pois é parte da mensagem. No final desta linha x + y aparece novamente na cor preta. Neste caso é o resultado da expressão matemática da soma x + y é que será enviada para a tela! No caso: 7! Exemplo 08 - Enviando conteúdo de expressão para tela – Parte 2/2 Usando Comando cout
  • 93. 093claudio_cesar_cordeiro@yahoo.com.br . Linguagem de Programação I - C++ Exemplo 08 – Execução do Programa Usando Comando cout
  • 94. 094claudio_cesar_cordeiro@yahoo.com.br . Overload do Caractere de Inserção no Comando cout do C++ . Linguagem de Programação I - C++
  • 95. 095claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Sobrecarga (Overload) do Caractere de Inserção no cout Overload (sobrecarga) do Caractere de Inserção, também conhecido como Operador de Inserção, nada mais é do que usarmos mais de um << no comando cout. Já vínhamos utilizando este recurso nos nossos exemplos. Agora oficializamos seu uso! Neste trecho de programa C++, as linhas 20, 21, 23, 24, 26, 27, 29 e 30 estão TODAS usando overload do Caractere de Inserção no comando cout!
  • 96. 096claudio_cesar_cordeiro@yahoo.com.br . O Comando cin do C++ . Linguagem de Programação I - C++
  • 97. claudio_cesar_cordeiro@yahoo.com.br . Lógica de Programação Caracteres de Extração de Dados >> cin vem de console input. Entrada de dados pelo console, no caso o teclado! Quando queremos entrar com um dado qualquer no programa, usamos o comando cin. >> O caracter >> é chamado de Caracter de Extração de Dados. É o inverso do Caractere de Inserção do cout. 097
  • 98. 098 O primeiro número que o operador digitar no teclado será atribuído à variável x (linha 16) e o segundo à variável y (linha 18). claudio_cesar_cordeiro@yahoo.com.br . Linguagem de Programação I - C++ Exemplo 09 – Recebendo Dados Pelo Teclado – Parte 1/2 Usando Comando cin
  • 99. 099claudio_cesar_cordeiro@yahoo.com.br Usando Comando cin . Linguagem de Programação I - C++ Exemplo 09 – Recebendo Dados Pelo Teclado – Parte 2/2 O restante do programa é exatamente igual ao exemplo anterior. Isto é, mostra o conteúdo das variáveis (linhas 20 e 21), a soma (linha 26) e o produto, ou multiplicação delas (linha 27).
  • 100. 100claudio_cesar_cordeiro@yahoo.com.br Usando Comando cin . Linguagem de Programação I - C++ Exemplo 09 – Execução do Programa O Dev-C++ não entende acentuação do Português no comando cout. Melhor não acentuar!Melhor não acentuar! Já acentuação nas Linhas de Comentário (//...) e/ou Blocos de Comentários (/*...*/) não tem problema!
  • 101. 101claudio_cesar_cordeiro@yahoo.com.br . As 7 Primeiras Regras Básicas Para Começar a Programar em C++ . Linguagem de Programação I - C++
  • 102. 102 O compilador que vamos utilizar, apesar de “alguns” bugs (mais de 300 ) e não ter mais manutenção desde 2005, é fácil de usar, de instalar e de se conseguir, haja vista ser um freeware. Ele é o ... Dev-C++. Em suma: para nosso estudo inicial em C++ ele atende muito bem! Existem outros melhores e ... BEM mais caros! Exemplos: o compilador C++ da Borland e o da Microsoft etc. claudio_cesar_cordeiro@yahoo.com.br Regra 01 – O melhor compilador é o que gente conhece! Regras Básicas de Programação C++ Aula Dev-C++ no YouTube ► http://www.youtube.com/watch?v=nAjcfERf07M. Linguagem de Programação I - C++ Aulinha no YouTube
  • 103. 103 Para os neófitos, esta regra vale ouro! Comece com soluções simples. Quando estivar dominando o assunto, aí pode fazer algumas gracinhas! Sem muito entusiasmo, porque para dar um tiro na perda com o C++ basta um ponto e vírgula fora do lugar! claudio_cesar_cordeiro@yahoo.com.br Regra 02 – Simplifique, não complique! Linguagem de Programação I - C++ . Regras Básicas de Programação C++
  • 104. 104 O C++ adora uma bibliotecazinha! Não vamos entrar no buraco do queijo com elas, mas as básicas têm que estar no sangue. Paulatinamente vamos apresentar mais algumas! claudio_cesar_cordeiro@yahoo.com.br Regra 03 – Nunca se esqueça das bibliotecas! Linguagem de Programação I - C++ As duas primeiras: iostream ► system, cin, cout e endl precisam dela conio.h ► getch() precisa dela Atenção! O comando #include não tem o ponto e vírgula (;) como finalizador da linha de comando! Coisa rara no C++! Esquecer de incluir as bibliotecas, ou digitar o nome delas errado, é uma fonte de erro na programação em C++. . Regras Básicas de Programação C++ Repare também que int main () também não tem ponto e vírgula. Na verdade poderia ter. Quando estudarmos as funções veremos quando ter ou não o ponto e vírgula numa função.
  • 105. 105 O namespace evita conflitos entre nomes iguais de objetos no ambiente C++. Para não nos estressarmos usaremos sempre o namespace padrão: std! claudio_cesar_cordeiro@yahoo.com.br Linguagem de Programação I - C++ Regra 04 – Nunca se esqueça do namespace ou Grupo Lógico! using namespace std; Necessário para: cin, cout e endl! Atenção! O comando using namespace std; TEM o ponto e vírgula (;) como finalizador da linha de comando, tal como 99,99% dos comandos do C++! Esquecer também o comando using namespace std; ou escrevê- lo de forma incorreta é outra fonte de erro na programação em C++. . Regras Básicas de Programação C++
  • 106. 106 Uma linha de comando no C++ SÓ TERMINA QUANDO FOR ENCONTRADO UM PONTO E VÍRGULA, com raríssimas exceções. claudio_cesar_cordeiro@yahoo.com.br Linguagem de Programação I - C++ Regra 05 – Nunca se esqueça do ponto e vírgula! No trecho de programa C++ acima, a linha 20 do editor tem somente um comando cout, enviando para a tela duas mudanças de linha. Por incrível que pareça, da linha 22 até a linha 25 TEMOS TAMBÉM SOMENTE UM COMANDO C++! O que caracteriza o final de um comando C++ é ponto e vírgula e não a mudança de linha no final. O Editor mostra quatro linhas de texto, mas é um comando único! Outra grande fonte de erro na programação em C++ e MUITÍSSIMO COMUM se deve ao esquecimento do ponto e vírgula para finalizar os comandos! . Regras Básicas de Programação C++
  • 107. 107claudio_cesar_cordeiro@yahoo.com.br Linguagem de Programação I - C++ Regra 06 – C++ é case sensitive – Comandos em minúsculas Não poderíamos escrever o trecho acima como: #INCLUDE <IOSTREAM> #INCLUDE <CONIO.H> USING NAMESPACE STD; INT MAIN () { INT a =5,A=11; COUT << .... e assim por diante! Dá erro na primeira linha, e em outras! Mais uma fonte de erro na programação em C++ é escrever os comandos em letras MAIÚSCULAS! Os Comandos e Palavras Reservadas em C++ são SEMPRE em minúsculas! Mesmo com os avisos acima, vai ter gente que vai escrever comandos em MAIÚSCULAS! Regras Básicas de Programação C++ C++ é CASE SENSITIVE! C++ é uma Linguagem case sensitive, isto é, é sensível a CAIXA ALTA (UPPER CASE) e caixa baixa (lower case). Por exemplo: int A; e int a; declaram duas variáveis de nome A e a. A variável A (maiúscula) é DIFERENTE da variável a (minúscula). São, portanto, duas variáveis diferentes! O que têm em comum, neste exemplo, é que ambas são do tipo inteiro. C++ é CASE SENSITIVE! C++ é CASE SENSITIVE!
  • 108. 108 Vence quem persiste! claudio_cesar_cordeiro@yahoo.com.br . Linguagem de Programação I - C++ Regra 07 – E por último ... (por enquanto ... pois a lista continuará!) Regras Básicas de Programação C++
  • 109. 109claudio_cesar_cordeiro@yahoo.com.br . Log de Erros do C++ . Linguagem de Programação I - C++
  • 110. 110claudio_cesar_cordeiro@yahoo.com.br Log de Erros do Dev-C++ . Linguagem de Programação I - C++ Exemplo 10 - Registro de Erros (log) do Dev-C++ - Falta de iostream Erro nas linhas 14, 17 e 37! Na verdade o erro está na linha 6! Foi colocada como comentário! A biblioteca iostream é necessária para uso dos comandos system, cin, cout e endl. Outro erro comum é errar o nome da biblioteca. Digitar #include <iostrema> é o mesmo que não incluir a bibioteca, pois o nome correto dela é: iostream!
  • 111. 111claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Log de Erros do Dev-C++ Exemplo 11 – Log de Erros Dev-C++ - Falta da Biblioteca conio.h Biblioteca conio.h é necessária para uso do comando getch().
  • 112. 112claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Log de Erros do Dev-C++ Exemplo 12 – Log de Erros Dev-C++ - Comandos em Maiúsculas Não foi encontrado o comando COUT! Nem poderia! Não existe! Existe cout com letras minúsculas! Lembre-se: C++ é case sensitive!
  • 113. 113claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Log de Erros do Dev-C++ Exemplo 13 – Log de Erros Dev-C++ - Falta de Ponto e Vírgula (;) Falta ponto e vírgula finalizador do comando da linha 8. Aqui vale uma explicação! O Log apresenta a linha 9 em vermelho com a mensagem de erro: “expected ‘;’ before “int”. Na verdade o erro está na linha anterior, a linha 8. O que ocorre é o seguinte: se tudo estivesse OK na linha 8 deveria ter um ponto e vírgula no final dela. Este ponto e vírgula estaria imediatamente antes do início da linha 9. Na linha 9 ela começa com int main (). Por isso o log diz que esperava (expected) um ponto e vírgula antes, que na verdade é o final da linha anterior! O log apresentou a linha 9 como errada, mas é a linha 8 que tem o erro! Tendeu?
  • 114. 114claudio_cesar_cordeiro@yahoo.com.br . Warning na Compilação . Linguagem de Programação I - C++
  • 115. 115claudio_cesar_cordeiro@yahoo.com.br . To warn – Significa em Inglês, avisar. Portanto, warning é aviso!. Linguagem de Programação I - C++ Warnings são anomalias que não comprometem a compilação. São chamados de Avisos, Alertas. O programa ao lado foi compilado e executado sem erros ou warnings. Perfeito! Compilação sem Erros e sem Warnings (Avisos) Esta janela ao lado aparece quando solicitamos somente a Compilação, sem execução imediata. Usamos Ctrl + F9. Note também que a área de Log está vazia!
  • 116. 116claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ Neste caso acrescentamos pontos e vírgulas nos comandos #include nas linhas 1 e 2. Era de esperar um erro ou warnings, na compilação. Erro não deu, mas a janela de compilação (Compile Progress) não apresentou warnings, mas a área de Log sim! Compilação com Warnings (Avisos) Esta janela ao lado aparece muito rápido e desaparece em seguida, sem warnings. Note que a área de Log apresenta warnings! Atenção! Os pontos e vírgulas no #include foram inseridos só para teste! Não devemos usá-los! Como já foi falado o Dev-C++ não é 100% confiável!
  • 117. 117claudio_cesar_cordeiro@yahoo.com.br . . Linguagem de Programação I - C++ . Fim Capítulo 01 Exercícios Propostos 01 que estão no SIA devem ser feitos. As Provas, com certeza, poderão ser inspiradas neles! Quem sabe? Arquivo no SIA em Seg, 22/07/13-21h05

×