Linguagem de Programação

Documentos relacionados
Estruturas de Dados. Introdução Definição de Ponteiros Declaração de Ponteiros em C Manipulação de Ponteiros em C

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: tipos de dados definidos pelo programador: struct union enum typedef

Estrutura de Dados. Struct (Registro) Lais Farias Alves

Prática de Programação. Prof. Tiago A. E. Ferreira Aula 9 Estruturas, Uniões, Enumerações e Tipos Definidos pelo Usuário

Linguagem de Programação

Sumário. Introdução à Ciência da Computação. Ponteiros em C. Introdução. Definição. Por quê ponteiros são importantes?

Bruno Hott Algoritmos e Estruturas de Dados I DECSI UFOP. Alocação Dinâmica de Memória

1. Selecione a Estrutura de Dados que melhor representa os diretórios ou pastas de arquivos do computador.

Linguagem C: Ponteiros - Alocação Dinâmica

Introdução à Computação

LINGUAGEM C: ESTRUTURAS DEFINIDAS PELO

Algoritmos e Estruturas de Dados. Prof. Marcelo Zorzan Profa. Melissa Zanatta

Exercícios. Alocação Dinâmica. Alocação dinâmica de memória. Alocação de memória. Alocação da Memória Principal. Alocação da Memória Principal

#include <stdio.h> Void main() { printf( Cheguei!\n"); } INTRODUÇÃO A LINGUAGEM C

Alocação Dinâmica de Memória. David Menotti Algoritmos e Estruturas de Dados II DInf UFPR

ESTRUTURAS COMPOSTAS. REGISTROS (Struct) Introdução à Ciência da Computação I Simone Senger Souza

Estruturas II UFOP 1/35

Métodos Computacionais. Vetores e Matrizes Dinâmicas

ESTRUTURAS COMPOSTAS REGISTRO. Slides de autoria de Rosely Sanches e Simone Senger de Souza

Programação: Vetores

Departamento de Sistemas de Computação Universidade de São Paulo Introdução a Ciência de Computação I. Aula 12 Estruturas

Métodos Computacionais

BCC202 - Estrutura de Dados I

Entender o problema Encontrar um algoritmo para resolvê-lo. Implementar o algoritmo numa linguagem de programação

Introdução a Programação de Jogos

Computadores Digitais 2. Prof. Rodrigo de Souza Couto

CES-11. Algoritmos e Estruturas de Dados. Carlos Alberto Alonso Sanches Juliana de Melo Bezerra

Módulo 5 Vetores e Alocação Dinâmica

C Estruturas. Section Summary. Adriano Cruz 1 de fevereiro de 2016

FACULDADE BATISTA MINEIRA - CST Banco de Dados Estruturas de Dados - Variáveis

Algoritmos e Estruturas de Dados I 01/2013. Passagem de Parâmetros e Estruturas. Pedro O.S. Vaz de Melo

ALOCAÇÃO DINÂMICA DE MEMORIA Lista 10. A linguagem C/C++ possui recursos para alocação dinâmica de memoria.

Universidade Estadual da Paraíba - UEPB Curso de Licenciatura em Computação

Linguagem C Princípios Básicos (parte 1)

Alocação Dinâmica em C

Linguagens de Programação Conceitos e Técnicas. Amarrações

Módulo 1. Introdução. AEDS I C++ (Rone Ilídio)

Estrutura de Dados. Aula 07 Alocação Dinâmica

8. Tipos estruturados

INF1007: Programação 2 9 Tipos Abstratos de Dados. (c) Dept. Informática - PUC-Rio 1

Introdução a Linguagem C. Prof. Me. Hélio Esperidião

INF 1007 Programação II

INF1007: Programação 2. 2 Alocação Dinâmica. 17/02/2014 (c) Dept. Informática - PUC-Rio 1

Introdução à Programação C

Alocação de Memória. Lucas Ferrari de Oliveira Professor Adjunto Universidade Federal do Paraná (UFPR)

6 Alguns conceitos e comandos em programação

Anhanguera Educacional S.A. Centro Universitário Ibero-Americano

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: ponteiros e alocação dinâmica

Linguagem C vetores. IF61A/IF71A - Computação 1 Prof. Leonelo Almeida. Universidade Tecnológica Federal do Paraná

Introdução à Linguagem C

Tipos Abstratos de Dados. Estrutura de Dados

LINGUAGEM C: ARRAY: VETORES E MATRIZES

Estrutura de dados 2. Ponteiro. Prof. Jesuliana N. Ulysses

Ponteiros e Alocação Dinâmica em C. Fonte: DCC UFMT (modificado)

Alocação Dinâmica de Memória

Vetores e Matrizes. Prof. Fabrício Olivetti de França Charles Henrique

Programação Básica. Estrutura de um algoritmo

Fundamentos de Programação. Linguagem C++ aula II - Variáveis e constantes. Prof.: Bruno Gomes

LINGUAGEM C: ALOCAÇÃO DINÂMICA

Linguagem C: Subprogramação

Estruturas de Dados Aula 12: Outras Implementações de Listas 18/04/2011

A Linguagem C. A forma de um programa em C

Modulo 9: Você define como éo dado... Struct e typedef

Podemos dar um nome à estrutura e referenciar esse nome na declaração das variáveis:

LP II Estrutura de Dados Estruturas Heterogêneas e Listas Lineares Estáticas. Prof. José Honorato Ferreira Nunes

Estrutura de Dados (DPADF 0056)

Fontes Bibliográficas. Listas Circulares. Função Imprime

Lição 7 Array em Java

Universidade Estadual de Mato Grosso do Sul Ciência da Computação Algoritmos e Estruturas de Dados I (AED-I) Prof. Nilton

INF 1620 P2-01/11/03 Questão 1 Nome:

The Cyclops Project. Introdução: C++

Estrutura de Dados Básica

Introdução à Linguagem C Variáveis e Expressões

INF1007: Programação 2 8 Listas Encadeadas. (c) Dept. Informática - PUC-Rio 1

LINGUAGEM C: FUNÇÕES FUNÇÃO 04/07/2017. Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa.

Arrays (Vetores) Arrays (Vetores) 28/04/ Índices. profs. } Ex1: Se eu preciso manipular 100 nomes de pessoas ao mesmo tempo... é melhor...

Linguagem de Programação C

Professora Jeane Melo

Introdução à Programação. Introdução a Linguagem C. Prof. José Honorato F. Nunes

MINISTÉRIO DA EDUCAÇÃO

Universidade Federal do Espírito Santo. Programação I Tipos de Dados Básicos - C Professora: Norminda Luiza

Java e sua Sintaxe. Estrutura mínima de um programa em Java: public class Exemplo { }

Comandos de controle de fluxo: if / for / while / do while.

Alocação Dinâmica. Túlio Toffolo BCC202 Aula 02 Algoritmos e Estruturas de Dados I

Algoritmos e Introdução à Programação. Lógica e Linguagem de Programação

Tipos Básicos. Operadores de Incremento e Decremento. Operador Sizeof. Estruturas de Dados Aula 2: Estruturas Estáticas

Aula 9 Oficina de Programação Matrizes. Profa. Elaine Faria UFU

Estruturas de Dados Aula 2: Estruturas Estáticas 02/03/2011

Programação Estruturada Prof. Rodrigo Hausen Organização e Gerenciamento de Memória

MCTA028 Programação Estruturada Aula 07: - Mapa de memória de um processo - Ponteiros (parte 1)

Estruturas da linguagem C. 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões.

Pesquisa Linear. Adriano J. Holanda 15/3/2016

Tipos Abstratos de Dados

5. Vetores e alocação dinâmica

Estrutura de Dados. Introduc a o e Alocac a o de Memo ria. Vilson Heck Junior. Instituto Federal de Santa Catarina

Vetores. IFSC/Florianópolis - Programação Orientada a Objetos + POO - prof. Herval Daminelli

Tipos Abstratos de Dados

Matrizes em C. Lucas Ferrari de Oliveira Professor Adjunto. Universidade Federal do Paraná

Transcrição:

Linguagem de Programação Estruturas e Definição de Tipo (struct / typedef) Gil Eduardo de Andrade

Introdução Uma estrutura, em C, é uma coleção de variáveis referenciada por apenas um nome; As estruturas fornecem uma maneira conveniente para se agrupar informações que possuem algum tipo de relação entre si;

Introdução As informações agrupadas nas estruturas são representadas (armazenadas) em variáveis; Tais variáveis são denominadas membros da estrutura;

Exemplo: struct aluno { Declara uma nova estrutura ou modelo de dados, especificando um identificador ( aluno ) para ela. }; char nome[50]; char curso[30]; int turma; A nova estrutura aluno possui como membros: nome, curso e turma.

Criando Estruturas Estruturas (struct) Ao definirmos uma estrutura temos um modelo do qual é possível gerar variáveis; Ao declararmos uma variável do tipo estrutura, o compilador C aloca memória o suficiente para acomodar todos os seus membros;

Criando Estruturas Considerando que as estruturas são definidas para que seja possível criar um novo modelo de dados elas são declaradas globalmente; Isso permite que esse novo modelo de dados seja usado em todo o arquivo fonte C que está sendo codificado ;

Exemplo: criando variável estrutura Declara um novo modelo de dados (estrutura) denominado aluno, que possui como membros: nome, curso e turma. Declara a variável sala do novo modelo de dados (estrutura) criado.

Manipulando os membros de uma estrutura Para que seja possível manipular (acessar) os membros de uma variável estrutura é utilizado o caractere reservado ponto. ; Ou seja, considerando o exemplo anterior, para acessar o membro turma da variável estrutura sala teríamos: sala.turma ;

Exemplo: manipulando os membros de uma estrutura Através do caractere reservado. é possível acessar (manipular) o membro turma da variável estrutura sala.

Exemplo: manipulando os membros da estrutura Resultado da execução.

Exemplo: alocação dinâmica de estruturas Utilizando o comando malloc é possível alocar memória para uma variável estrutura, assim como acontece com variáveis de outros tipos (int, char).

Exemplo: alocação dinâmica de estruturas Resultado da execução.

Exemplo: passagem de estruturas para funções Declara função que recebe uma estrutura como parâmetro. Invoca a função e passa a estrutura sala como parâmetro. Implementação da função que recebe e acessa os dados da estrutura passada como parâmetro.

Exemplo: passagem de estruturas para funções Resultado da execução.

Definição de Tipo (typedef) Conceito As estruturas permitem que novos modelos de dados sejam criados; Tais modelos de podem ser definidos como um novo tipo, funcionando de forma análoga aos tipos nativos da linguagem C: int, char, float, double, etc;

Typedef: Definição de Tipo (typedef) Para que seja possível definir um novo tipo em C é utilizada a palavra reservada typedef; O typedef deve ser utilizado juntamente com a declaração do novo modelo de dados (estrutura);

Definição de Tipo (typedef) Exemplo: definindo o tipo aluno Diferentemente do exemplo anterior, a palavra reservada typedef é utilizada antes da palavra reservada struct. Já o nome do novo tipo definido é colocado ao final da declaração dos membros da estrutura. Ao declararmos uma variável para o novo tipo definido (aluno) já não é mais necessário utilizar a palavra reservada struct. O procedimento torna-se similar a declaração de variáveis do tipo: int, float, char, etc.

Exemplo: definindo o tipo aluno Resultado da execução.

Definição de Tipo (typedef) Exemplo: definindo o tipo aluno - alternativo Diferentemente do exemplo anterior, primeiramente é declarada a estrutura ( struct ) dados. Apenas após a declaração da estrutura é que a palavra reservada typedef é utilizada para criar um novo tipo de dado, denominado aluno. Ao declararmos uma variável para o novo tipo definido (aluno) já não é mais necessário utilizar a palavra reservada struct. O procedimento torna-se similar a declaração de variáveis do tipo: int, float, char, etc.

Exemplo: definindo o tipo aluno - alternativo Resultado da execução.

Estrutura e Definição de Tipo Exemplos Utilizados no Documento http://www.gileduardo.com.br/ifpr/pcii/downloads/pc_exdoc17.zip Mais Exemplos sobre o Conteúdo http://www.gileduardo.com.br/ifpr/pcii/downloads/pc_ex17.zip Exercícios sobre o Conteúdo http://www.gileduardo.com.br/ifpr/lp/downloads/lp_pratica17.pdf