SlideShare una empresa de Scribd logo
1 de 17
Programação Estruturada 2
Prof. Charles Fortes
Funções e Structs
Programação Estruturada 2
Prof. Charles Fortes
Charles Fortes
Programação Estruturada 2
Prof. Charles Fortes
Charles Fortes
Líder Técnico na Empresa Prime Systems.
Agilista, apaixonado por desenvolvimento
(Web, Desktop, Mobile, o que for), pai,
amante do Paintball e do Kenjutsu. MTAC -
Microsoft Technical Audience Contributor
100Loop - DotNetRaptors
Programação Estruturada 2
Prof. Charles Fortes
Charles Fortes
Líder Técnico na Empresa Prime Systems.
Agilista, apaixonado por desenvolvimento
(Web, Desktop, Mobile, o que for), pai,
amante do Paintball e do Kenjutsu. MTAC -
Microsoft Technical Audience Contributor
100Loop - DotNetRaptors
SlideShare: http://pt.slideshare.net/charleswellingtonfortes
Linkedin: http://br.linkedin.com/in/charlesfortes/
Twitter: @CharlesFortes
Programação Estruturada 2
Prof. Charles Fortes
Charles Fortes
Líder Técnico na Empresa Prime Systems.
Agilista, apaixonado por desenvolvimento
(Web, Desktop, Mobile, o que for), pai,
amante do Paintball e do Kenjutsu. MTAC -
Microsoft Technical Audience Contributor
100Loop - DotNetRaptors
Desenvolvimento Web – MVC – Angular.JS – JQuery – SQLServer – MySQL – HTML5 – NoSQL
Programação Estruturada 2
Prof. Charles Fortes
Correção do Exercício Entregue
Programação Estruturada 2
Prof. Charles Fortes
Funções
PLT – Capítulo 5
Programação Estruturada 2
Prof. Charles Fortes
Módulos de Programas em C
Os programas na vida real são em geral muito maior do que o que vemos em aula, e eles devem ser
organizados de forma a permitir uma melhor manutenção e evolução.
Cada paradigma fornecesse seus meios para atingir tal objetivo, em C, organizamos o código em
Funções e Bibliotecas de Funções, as combinando com as nativas do C.
Lembre-se Nunca Reinvente a Roda
Caneta da Nasa
Programação Estruturada 2
Prof. Charles Fortes
Módulos de Programas em C
“As funções são ativadas (chamadas ou invocadas) por uma chamada de função. A chamada da
função especifica o nome da função e fornece informações (como argumentos) de que a referida
função necessita para realizar a tarefa designada. Uma analogia comum para isso é a forma
hierárquica de administração.”
Programação Estruturada 2
Prof. Charles Fortes
Função Principal e Subordinada
Programação Estruturada 2
Prof. Charles Fortes
Protótipo de Funções
Um protótipo de função diz ao compilador o tipo do dado retornado pela
função, o número de parâmetros que a função espera receber, os tipos
dos parâmetros e a ordem na qual esses parâmetros são esperados. O
compilador usa protótipos de funções para validar as chamadas de
funções. As versões anteriores do C não realizavam esse tipo de
verificação, portanto era possível chamar funções impropriamente sem
que o compilador detectasse os erros.
Programação Estruturada 2
Prof. Charles Fortes
Chamadas por Valor e por Referência
PLT – Capítulo 5
Programação Estruturada 2
Prof. Charles Fortes
Parâmetros por valor
Quando os argumentos são passados através de uma chamada por valor, é feita uma cópia do valor
dos argumentos e a mesma é passada para a função chamada. As modificações na cópia não afetam
o valor original de uma variável na função que realizou a chamada.
Programação Estruturada 2
Prof. Charles Fortes
Parâmetros por referência
Quando um argumento é passado através de uma chamada por referência, a função chamadora
permite realmente que a função chamada modifique o valor original da variável.
Programação Estruturada 2
Prof. Charles Fortes
Introdução a Estruturas - Structs
PLT – Capítulo 10
Programação Estruturada 2
Prof. Charles Fortes
Definições de Estruturas
Estruturas são grupos de variáveis relacionadas entre si — algumas vezes chamadas agregadas — sob
um nome. As estruturas podem conter variáveis de muitos tipos diferentes de dados
Programação Estruturada 2
Prof. Charles Fortes
Dúvidas?

Más contenido relacionado

Destacado

Programação Genetica
Programação GeneticaProgramação Genetica
Programação GeneticaCharles Fortes
 
Pitagoras - Introdução a Programação Orientada a Objetos - Conceitos
Pitagoras - Introdução a Programação Orientada a Objetos - ConceitosPitagoras - Introdução a Programação Orientada a Objetos - Conceitos
Pitagoras - Introdução a Programação Orientada a Objetos - ConceitosCharles Fortes
 
Pitagoras - Introdução a Programação Orientada a Objetos - Encapsulamento, Ac...
Pitagoras - Introdução a Programação Orientada a Objetos - Encapsulamento, Ac...Pitagoras - Introdução a Programação Orientada a Objetos - Encapsulamento, Ac...
Pitagoras - Introdução a Programação Orientada a Objetos - Encapsulamento, Ac...Charles Fortes
 
inteligência artificial - fuzzy - mineração
inteligência artificial - fuzzy - mineraçãointeligência artificial - fuzzy - mineração
inteligência artificial - fuzzy - mineraçãoCharles Fortes
 
Conceitos – Do Homem à Máquina
Conceitos – Do Homem à MáquinaConceitos – Do Homem à Máquina
Conceitos – Do Homem à MáquinaCharles Fortes
 
PE-I - Apresentação Professor
PE-I - Apresentação ProfessorPE-I - Apresentação Professor
PE-I - Apresentação ProfessorCharles Fortes
 
Sistemas Operacionais - Aula 7 - Processos e Threads
Sistemas Operacionais - Aula 7 - Processos e ThreadsSistemas Operacionais - Aula 7 - Processos e Threads
Sistemas Operacionais - Aula 7 - Processos e ThreadsCharles Fortes
 
IA - Apresentação do Professor
IA - Apresentação do ProfessorIA - Apresentação do Professor
IA - Apresentação do ProfessorCharles Fortes
 
Sistemas Operacionais - Aula 9 - Gerencia de Recursos
Sistemas Operacionais - Aula 9 - Gerencia de RecursosSistemas Operacionais - Aula 9 - Gerencia de Recursos
Sistemas Operacionais - Aula 9 - Gerencia de RecursosCharles Fortes
 
Sistemas Operacionais - Aula 8 - Sincronização e Comunicação entre Processos
Sistemas Operacionais - Aula 8 - Sincronização e Comunicação entre ProcessosSistemas Operacionais - Aula 8 - Sincronização e Comunicação entre Processos
Sistemas Operacionais - Aula 8 - Sincronização e Comunicação entre ProcessosCharles Fortes
 
IA - Introdução Inteligência Artificial
IA - Introdução Inteligência ArtificialIA - Introdução Inteligência Artificial
IA - Introdução Inteligência ArtificialCharles Fortes
 
Introdução a Desenvolvimento de Jogos HTML 5 para Windows 8 com Html5Quintus
Introdução a Desenvolvimento de Jogos HTML 5 para Windows 8 com Html5QuintusIntrodução a Desenvolvimento de Jogos HTML 5 para Windows 8 com Html5Quintus
Introdução a Desenvolvimento de Jogos HTML 5 para Windows 8 com Html5QuintusCharles Fortes
 
Apresentação prof e materia
Apresentação prof e materiaApresentação prof e materia
Apresentação prof e materiaCharles Fortes
 
Sistemas Operacionais - Aula 5 - Concorrência
Sistemas Operacionais - Aula 5 - ConcorrênciaSistemas Operacionais - Aula 5 - Concorrência
Sistemas Operacionais - Aula 5 - ConcorrênciaCharles Fortes
 
Desenvolvimento de software seguro
Desenvolvimento de software seguroDesenvolvimento de software seguro
Desenvolvimento de software seguroCharles Fortes
 

Destacado (20)

Programação Genetica
Programação GeneticaProgramação Genetica
Programação Genetica
 
Pitagoras - Introdução a Programação Orientada a Objetos - Conceitos
Pitagoras - Introdução a Programação Orientada a Objetos - ConceitosPitagoras - Introdução a Programação Orientada a Objetos - Conceitos
Pitagoras - Introdução a Programação Orientada a Objetos - Conceitos
 
Pitagoras - Introdução a Programação Orientada a Objetos - Encapsulamento, Ac...
Pitagoras - Introdução a Programação Orientada a Objetos - Encapsulamento, Ac...Pitagoras - Introdução a Programação Orientada a Objetos - Encapsulamento, Ac...
Pitagoras - Introdução a Programação Orientada a Objetos - Encapsulamento, Ac...
 
inteligência artificial - fuzzy - mineração
inteligência artificial - fuzzy - mineraçãointeligência artificial - fuzzy - mineração
inteligência artificial - fuzzy - mineração
 
Conceitos – Do Homem à Máquina
Conceitos – Do Homem à MáquinaConceitos – Do Homem à Máquina
Conceitos – Do Homem à Máquina
 
PE-I - Apresentação Professor
PE-I - Apresentação ProfessorPE-I - Apresentação Professor
PE-I - Apresentação Professor
 
Sistemas Operacionais - Aula 7 - Processos e Threads
Sistemas Operacionais - Aula 7 - Processos e ThreadsSistemas Operacionais - Aula 7 - Processos e Threads
Sistemas Operacionais - Aula 7 - Processos e Threads
 
IA - Apresentação do Professor
IA - Apresentação do ProfessorIA - Apresentação do Professor
IA - Apresentação do Professor
 
Sistemas Operacionais - Aula 9 - Gerencia de Recursos
Sistemas Operacionais - Aula 9 - Gerencia de RecursosSistemas Operacionais - Aula 9 - Gerencia de Recursos
Sistemas Operacionais - Aula 9 - Gerencia de Recursos
 
Sistemas Operacionais - Aula 8 - Sincronização e Comunicação entre Processos
Sistemas Operacionais - Aula 8 - Sincronização e Comunicação entre ProcessosSistemas Operacionais - Aula 8 - Sincronização e Comunicação entre Processos
Sistemas Operacionais - Aula 8 - Sincronização e Comunicação entre Processos
 
IA - Introdução Inteligência Artificial
IA - Introdução Inteligência ArtificialIA - Introdução Inteligência Artificial
IA - Introdução Inteligência Artificial
 
Introdução ao DDD
Introdução ao DDDIntrodução ao DDD
Introdução ao DDD
 
Introdução a Desenvolvimento de Jogos HTML 5 para Windows 8 com Html5Quintus
Introdução a Desenvolvimento de Jogos HTML 5 para Windows 8 com Html5QuintusIntrodução a Desenvolvimento de Jogos HTML 5 para Windows 8 com Html5Quintus
Introdução a Desenvolvimento de Jogos HTML 5 para Windows 8 com Html5Quintus
 
Metodologias ageis
Metodologias ageisMetodologias ageis
Metodologias ageis
 
Apresentação prof e materia
Apresentação prof e materiaApresentação prof e materia
Apresentação prof e materia
 
Sistemas Operacionais - Aula 5 - Concorrência
Sistemas Operacionais - Aula 5 - ConcorrênciaSistemas Operacionais - Aula 5 - Concorrência
Sistemas Operacionais - Aula 5 - Concorrência
 
Desenvolvimento de software seguro
Desenvolvimento de software seguroDesenvolvimento de software seguro
Desenvolvimento de software seguro
 
Lambda Expressions
Lambda ExpressionsLambda Expressions
Lambda Expressions
 
Introdução ao TDD
Introdução ao TDDIntrodução ao TDD
Introdução ao TDD
 
MVC Pattern
MVC PatternMVC Pattern
MVC Pattern
 

Similar a PE2 - Funções e Structs

Importância do profissional Hacker ético no mercado de trabalho
Importância do profissional Hacker ético no mercado de trabalhoImportância do profissional Hacker ético no mercado de trabalho
Importância do profissional Hacker ético no mercado de trabalhoMarcos Flávio Araújo Assunção
 
Engenharia reversa
Engenharia reversaEngenharia reversa
Engenharia reversaEMSNEWS
 
Unidade 1.1 Introdução ao Software
Unidade 1.1 Introdução ao SoftwareUnidade 1.1 Introdução ao Software
Unidade 1.1 Introdução ao SoftwareJuan Carlos Lamarão
 
Verificação e Validação
Verificação e ValidaçãoVerificação e Validação
Verificação e ValidaçãoMarcelo Yamaguti
 
[DevOps Summit]Importância de testes automatizados para sustentar Continuous...
[DevOps Summit]Importância de testes automatizados para sustentar Continuous...[DevOps Summit]Importância de testes automatizados para sustentar Continuous...
[DevOps Summit]Importância de testes automatizados para sustentar Continuous...Samanta Cicilia
 
Parallel Programming no .NET 4.0
Parallel Programming no .NET 4.0Parallel Programming no .NET 4.0
Parallel Programming no .NET 4.0Comunidade NetPonto
 
Seu framework é melhor pra quê?
Seu framework é melhor pra quê?Seu framework é melhor pra quê?
Seu framework é melhor pra quê?Jaime Neto
 
sfCon 2012 - Conceitos de Engenharia Reversa aplicados na migração de sistema...
sfCon 2012 - Conceitos de Engenharia Reversa aplicados na migração de sistema...sfCon 2012 - Conceitos de Engenharia Reversa aplicados na migração de sistema...
sfCon 2012 - Conceitos de Engenharia Reversa aplicados na migração de sistema...Guilherme Veras
 
Profissões ligadas a informática 9º ano / Oc
Profissões ligadas a informática 9º ano / OcProfissões ligadas a informática 9º ano / Oc
Profissões ligadas a informática 9º ano / OcFrancisco Nogueira
 
As melhores práticas de desenvolvimento de software em fábrica de software
As melhores práticas de desenvolvimento de software em fábrica de softwareAs melhores práticas de desenvolvimento de software em fábrica de software
As melhores práticas de desenvolvimento de software em fábrica de softwareRafael Souza
 
Arquitetura funcional em microservices, 4 anos depois
Arquitetura funcional em microservices, 4 anos depoisArquitetura funcional em microservices, 4 anos depois
Arquitetura funcional em microservices, 4 anos depoisLucas Cavalcanti dos Santos
 
Arquitetura de Computadores - Lecom - UFMG
Arquitetura de Computadores - Lecom - UFMGArquitetura de Computadores - Lecom - UFMG
Arquitetura de Computadores - Lecom - UFMGdjonatascostsa
 
Ferramenta Flow - Análise estática de códigos javascript
Ferramenta Flow - Análise estática de códigos javascriptFerramenta Flow - Análise estática de códigos javascript
Ferramenta Flow - Análise estática de códigos javascriptRodrigo Ferreira
 
[4Soft] Git para iniciantes
[4Soft] Git para iniciantes[4Soft] Git para iniciantes
[4Soft] Git para iniciantes4Soft
 

Similar a PE2 - Funções e Structs (20)

Importância do profissional Hacker ético no mercado de trabalho
Importância do profissional Hacker ético no mercado de trabalhoImportância do profissional Hacker ético no mercado de trabalho
Importância do profissional Hacker ético no mercado de trabalho
 
[Parfor] esw aula 04
[Parfor] esw   aula 04[Parfor] esw   aula 04
[Parfor] esw aula 04
 
Engenharia reversa
Engenharia reversaEngenharia reversa
Engenharia reversa
 
Excel VBA: Aula 2
Excel VBA: Aula 2Excel VBA: Aula 2
Excel VBA: Aula 2
 
Unidade 1.1 Introdução ao Software
Unidade 1.1 Introdução ao SoftwareUnidade 1.1 Introdução ao Software
Unidade 1.1 Introdução ao Software
 
Verificação e Validação
Verificação e ValidaçãoVerificação e Validação
Verificação e Validação
 
[DevOps Summit]Importância de testes automatizados para sustentar Continuous...
[DevOps Summit]Importância de testes automatizados para sustentar Continuous...[DevOps Summit]Importância de testes automatizados para sustentar Continuous...
[DevOps Summit]Importância de testes automatizados para sustentar Continuous...
 
Parallel Programming no .NET 4.0
Parallel Programming no .NET 4.0Parallel Programming no .NET 4.0
Parallel Programming no .NET 4.0
 
Seu framework é melhor pra quê?
Seu framework é melhor pra quê?Seu framework é melhor pra quê?
Seu framework é melhor pra quê?
 
sfCon 2012 - Conceitos de Engenharia Reversa aplicados na migração de sistema...
sfCon 2012 - Conceitos de Engenharia Reversa aplicados na migração de sistema...sfCon 2012 - Conceitos de Engenharia Reversa aplicados na migração de sistema...
sfCon 2012 - Conceitos de Engenharia Reversa aplicados na migração de sistema...
 
Profissões ligadas a informática 9º ano / Oc
Profissões ligadas a informática 9º ano / OcProfissões ligadas a informática 9º ano / Oc
Profissões ligadas a informática 9º ano / Oc
 
[Parfor] esw aula 03
[Parfor] esw   aula 03[Parfor] esw   aula 03
[Parfor] esw aula 03
 
As melhores práticas de desenvolvimento de software em fábrica de software
As melhores práticas de desenvolvimento de software em fábrica de softwareAs melhores práticas de desenvolvimento de software em fábrica de software
As melhores práticas de desenvolvimento de software em fábrica de software
 
Arquitetura funcional em microservices, 4 anos depois
Arquitetura funcional em microservices, 4 anos depoisArquitetura funcional em microservices, 4 anos depois
Arquitetura funcional em microservices, 4 anos depois
 
Arquitetura de Computadores - Lecom - UFMG
Arquitetura de Computadores - Lecom - UFMGArquitetura de Computadores - Lecom - UFMG
Arquitetura de Computadores - Lecom - UFMG
 
Ferramenta Flow - Análise estática de códigos javascript
Ferramenta Flow - Análise estática de códigos javascriptFerramenta Flow - Análise estática de códigos javascript
Ferramenta Flow - Análise estática de códigos javascript
 
[4Soft] Git para iniciantes
[4Soft] Git para iniciantes[4Soft] Git para iniciantes
[4Soft] Git para iniciantes
 
Testes de Segurança de Software (tech-ed 2008)
Testes de Segurança de Software (tech-ed 2008)Testes de Segurança de Software (tech-ed 2008)
Testes de Segurança de Software (tech-ed 2008)
 
Durable functionsmvp conf2020
Durable functionsmvp conf2020Durable functionsmvp conf2020
Durable functionsmvp conf2020
 
Requisitos de software
Requisitos de softwareRequisitos de software
Requisitos de software
 

Más de Charles Fortes

Acesso a banco de dados com entity framework
Acesso a banco de dados com entity frameworkAcesso a banco de dados com entity framework
Acesso a banco de dados com entity frameworkCharles Fortes
 
Economia global: França e Inglaterra
Economia global: França e InglaterraEconomia global: França e Inglaterra
Economia global: França e InglaterraCharles Fortes
 
Sistemas Operacionais - Aula 6 - Estrutura do Sistema Operacional
Sistemas Operacionais - Aula 6 - Estrutura do Sistema OperacionalSistemas Operacionais - Aula 6 - Estrutura do Sistema Operacional
Sistemas Operacionais - Aula 6 - Estrutura do Sistema OperacionalCharles Fortes
 
Sistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e ExercíciosSistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e ExercíciosCharles Fortes
 
Sistemas Operacionais - Aula 3 - Hardware e Software
Sistemas Operacionais - Aula 3 - Hardware e SoftwareSistemas Operacionais - Aula 3 - Hardware e Software
Sistemas Operacionais - Aula 3 - Hardware e SoftwareCharles Fortes
 
Sistemas Operacionais - Aula 2 - Visão Geral de Sistemas Operacionais
Sistemas Operacionais - Aula 2 - Visão Geral de Sistemas OperacionaisSistemas Operacionais - Aula 2 - Visão Geral de Sistemas Operacionais
Sistemas Operacionais - Aula 2 - Visão Geral de Sistemas OperacionaisCharles Fortes
 
Sistemas Operacionais - Aula 1 - História e Introdução a SO
Sistemas Operacionais - Aula 1 - História e Introdução a SOSistemas Operacionais - Aula 1 - História e Introdução a SO
Sistemas Operacionais - Aula 1 - História e Introdução a SOCharles Fortes
 

Más de Charles Fortes (7)

Acesso a banco de dados com entity framework
Acesso a banco de dados com entity frameworkAcesso a banco de dados com entity framework
Acesso a banco de dados com entity framework
 
Economia global: França e Inglaterra
Economia global: França e InglaterraEconomia global: França e Inglaterra
Economia global: França e Inglaterra
 
Sistemas Operacionais - Aula 6 - Estrutura do Sistema Operacional
Sistemas Operacionais - Aula 6 - Estrutura do Sistema OperacionalSistemas Operacionais - Aula 6 - Estrutura do Sistema Operacional
Sistemas Operacionais - Aula 6 - Estrutura do Sistema Operacional
 
Sistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e ExercíciosSistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e Exercícios
 
Sistemas Operacionais - Aula 3 - Hardware e Software
Sistemas Operacionais - Aula 3 - Hardware e SoftwareSistemas Operacionais - Aula 3 - Hardware e Software
Sistemas Operacionais - Aula 3 - Hardware e Software
 
Sistemas Operacionais - Aula 2 - Visão Geral de Sistemas Operacionais
Sistemas Operacionais - Aula 2 - Visão Geral de Sistemas OperacionaisSistemas Operacionais - Aula 2 - Visão Geral de Sistemas Operacionais
Sistemas Operacionais - Aula 2 - Visão Geral de Sistemas Operacionais
 
Sistemas Operacionais - Aula 1 - História e Introdução a SO
Sistemas Operacionais - Aula 1 - História e Introdução a SOSistemas Operacionais - Aula 1 - História e Introdução a SO
Sistemas Operacionais - Aula 1 - História e Introdução a SO
 

PE2 - Funções e Structs

  • 1. Programação Estruturada 2 Prof. Charles Fortes Funções e Structs
  • 2. Programação Estruturada 2 Prof. Charles Fortes Charles Fortes
  • 3. Programação Estruturada 2 Prof. Charles Fortes Charles Fortes Líder Técnico na Empresa Prime Systems. Agilista, apaixonado por desenvolvimento (Web, Desktop, Mobile, o que for), pai, amante do Paintball e do Kenjutsu. MTAC - Microsoft Technical Audience Contributor 100Loop - DotNetRaptors
  • 4. Programação Estruturada 2 Prof. Charles Fortes Charles Fortes Líder Técnico na Empresa Prime Systems. Agilista, apaixonado por desenvolvimento (Web, Desktop, Mobile, o que for), pai, amante do Paintball e do Kenjutsu. MTAC - Microsoft Technical Audience Contributor 100Loop - DotNetRaptors SlideShare: http://pt.slideshare.net/charleswellingtonfortes Linkedin: http://br.linkedin.com/in/charlesfortes/ Twitter: @CharlesFortes
  • 5. Programação Estruturada 2 Prof. Charles Fortes Charles Fortes Líder Técnico na Empresa Prime Systems. Agilista, apaixonado por desenvolvimento (Web, Desktop, Mobile, o que for), pai, amante do Paintball e do Kenjutsu. MTAC - Microsoft Technical Audience Contributor 100Loop - DotNetRaptors Desenvolvimento Web – MVC – Angular.JS – JQuery – SQLServer – MySQL – HTML5 – NoSQL
  • 6. Programação Estruturada 2 Prof. Charles Fortes Correção do Exercício Entregue
  • 7. Programação Estruturada 2 Prof. Charles Fortes Funções PLT – Capítulo 5
  • 8. Programação Estruturada 2 Prof. Charles Fortes Módulos de Programas em C Os programas na vida real são em geral muito maior do que o que vemos em aula, e eles devem ser organizados de forma a permitir uma melhor manutenção e evolução. Cada paradigma fornecesse seus meios para atingir tal objetivo, em C, organizamos o código em Funções e Bibliotecas de Funções, as combinando com as nativas do C. Lembre-se Nunca Reinvente a Roda Caneta da Nasa
  • 9. Programação Estruturada 2 Prof. Charles Fortes Módulos de Programas em C “As funções são ativadas (chamadas ou invocadas) por uma chamada de função. A chamada da função especifica o nome da função e fornece informações (como argumentos) de que a referida função necessita para realizar a tarefa designada. Uma analogia comum para isso é a forma hierárquica de administração.”
  • 10. Programação Estruturada 2 Prof. Charles Fortes Função Principal e Subordinada
  • 11. Programação Estruturada 2 Prof. Charles Fortes Protótipo de Funções Um protótipo de função diz ao compilador o tipo do dado retornado pela função, o número de parâmetros que a função espera receber, os tipos dos parâmetros e a ordem na qual esses parâmetros são esperados. O compilador usa protótipos de funções para validar as chamadas de funções. As versões anteriores do C não realizavam esse tipo de verificação, portanto era possível chamar funções impropriamente sem que o compilador detectasse os erros.
  • 12. Programação Estruturada 2 Prof. Charles Fortes Chamadas por Valor e por Referência PLT – Capítulo 5
  • 13. Programação Estruturada 2 Prof. Charles Fortes Parâmetros por valor Quando os argumentos são passados através de uma chamada por valor, é feita uma cópia do valor dos argumentos e a mesma é passada para a função chamada. As modificações na cópia não afetam o valor original de uma variável na função que realizou a chamada.
  • 14. Programação Estruturada 2 Prof. Charles Fortes Parâmetros por referência Quando um argumento é passado através de uma chamada por referência, a função chamadora permite realmente que a função chamada modifique o valor original da variável.
  • 15. Programação Estruturada 2 Prof. Charles Fortes Introdução a Estruturas - Structs PLT – Capítulo 10
  • 16. Programação Estruturada 2 Prof. Charles Fortes Definições de Estruturas Estruturas são grupos de variáveis relacionadas entre si — algumas vezes chamadas agregadas — sob um nome. As estruturas podem conter variáveis de muitos tipos diferentes de dados
  • 17. Programação Estruturada 2 Prof. Charles Fortes Dúvidas?