AULA 5. Conceitos. Melhores momentos. Conceitos. Conceitos. Conceitos. Conceitos

Tamanho: px
Começar a partir da página:

Download "AULA 5. Conceitos. Melhores momentos. Conceitos. Conceitos. Conceitos. Conceitos"

Transcrição

1 Melhores momentos AULA 5 Endereços: a memóra é um etor e o índce desse etor onde está uma aráel é o endereço da aráel. Com o oerador & obtemos o endereço de uma aráel. Exemlos: & é o endereço de &onto é o endereço da estrutura onto &[2] é o endereço de [2] Ponteros: são aráes que armazenam endereços. Exemlos: nt *; /* ontero ara nt*/ char *q; /* ontero ara char*/ double *r; /* ontero ara double*/ Dereferencação: Se aonta ara a aráel, então * é snônmo de. = &; /* aonta ara / (*)++; é o mesmo que ++; * = Artmétca de onteros: se é um aontador ara um nt e o seu conteúdo é 64542, então + é 64546, os um nt ocua 4 bytes (no meu comutador...) [] [] [9] Vetores e onteros: o nome de um etor é snônmo do endereço da osção ncal do etor. nt []; é snônmo de &[] + é snônmo de &[] +2 é snônmo de &[2] [] [] [9]

2 Vetores e onteros: o nome de um etor é snônmo do endereço da osção ncal do etor. nt []; * é snônmo de [] *(+) é snônmo de [] *(+2) é snônmo de [2] Vetores como arâmetros Como arâmetros formas de uma função, e char s[ ]; char *s; são equalentes. O Kernghan e Rtche referem a segunda os dz mas exlctamente que a aráel é um aontador. Outro exemlo nt man(nt argc, char **arg); [] [] [9] Hoje AULA 6 alocação dnâmca de memóra Alocação dnâmca de memóra Alocação dnâmca PF Aêndce F htt:// f/algortmos/aulas/aloca.html The C rogrammng Language Bran W. Kernghan e Denns M. Rtche Prentce-Hall Fonte: htt://

3 Alocação dnâmca As ezes, a quantdade de memóra que o rograma necessta só se torna conhecda durante a execução do rograma. Para ldar com essa stuação é recso recorrer à alocação dnâmca de memóra. A alocação dnâmca é gerencada elas funções e free, que estão na bbloteca stdlb #nclude <stdlb.h> A função aloca um bloco de bytes consecutos na memóra e deole o endereço desse bloco. tr char *tr; tr = (); scanf("%c",tr); tr tyedef struct { nt da,mes,ano; Data; Data *d; d = (szeof(data)); Se é ontero ara uma estrutura então ->camo-da-estrutura é uma abreatura de (*).camo-da-estrutura d->da=3; d->mes=2; d->ano=28; d d da mes d 3 2 da mes ano 28 ano A memóra é nta A memóra é nta Se não consegue alocar mas esaço então retorna NULL. tr = (szeof(data)); f (tr == NULL) { rntf("socorro! deoleu NULL!\n"); ext(exit_failure); É conenente usarmos a função od *Safe (nt nbytes) { od *tr; tr = (nbytes); f (tr == NULL) { rntf("socorro! deoleu " "NULL!\n"); ext(exit_failure); return tr;

4 free Vetores dnamcamente nt *; nt, n; Fonte: htt:// A função free lbera a memóra alocada or. free(d); Há essoas que or questões de segurança gostam de atrbur NULL a um ontero deos da lberaçõa de memóra free(d); d = NULL; rntf("dgte o tamanho do etor: "); scanf("%d", &n); = Safe(n*szeof(nt)); for ( = ; < n; ++) *(+) = ; /* [] = ; */ for ( = ; < n; ++) rntf("end. [%d] = % cont [%d] = %d\n",, (od*)(+),, []); free(); Matrzes dnâmcas Matrzes dnâmcas Matrzes bdmensonas são mlementadas como etores de etores. a m = 6 n = 7 nt **a; nt ; a = Safe(m * szeof(nt*)); for ( = ; < m; ++) a[] = Safe(n * szeof(nt)); 2 a [2] [3] == O elemento de a que está na lnha e coluna j é a[][j] Lberação de memóra de matrzes Para lberarmos a memóra alocada dnamcamente ara uma matrz deemos segur os assos nersos aos da alocação trocando Safe or free. od freematrzint(nt **a) { nt ; for ( = ; < m; ++){ free(a[]); /* lberar a lnha */ a[] = NULL; free(a);/* lbera etor de onteros */ a = NULL; a nt a[3][4]; Matrzes automátcas a [] [2] == a a a [] [] [2]

5 Passagem de arâmetros Suonha que temos os rotótos de funções od f(nt **m); nt g(nt m[][64]); e as declarações nt **a; nt m[6][64]; então temos que f(a); /* ok */ = g(a); /* erro */ = g(m); /* ok */ f(m); /* erro */

AULA 5. Registros e Structs. Registros e Structs. Pausa para nossos comerciais. Hoje. Registros e structs

AULA 5. Registros e Structs. Registros e Structs. Pausa para nossos comerciais. Hoje. Registros e structs Pausa ara nossos comerciais AULA 5 Plantão de dúidas: Vinícius Horário: terças das 12h às 13h Onde: Rede Linux do IME, Bloco A, sala 127 Treinos ara Maratona de Programação: Horário: quintas das 14h às

Leia mais

AULA 6. Conceitos. Melhores momentos. Conceitos. Conceitos. Conceitos. Conceitos

AULA 6. Conceitos. Melhores momentos. Conceitos. Conceitos. Conceitos. Conceitos Melhores momentos AULA Endereços: a memória é um vetor e o índice desse vetor onde está uma variável é o endereço da variável. Com o operador & obtemos o endereço de uma variável. Exemplos: &i é o endereço

Leia mais

union [<union-type-name>] { <type> <variable-names> ;... } [<union-variables>] ; union int_or_long { int i; long l; } a_number;

union [<union-type-name>] { <type> <variable-names> ;... } [<union-variables>] ; union int_or_long { int i; long l; } a_number; Uniões Uma união (union) consiste de uma variável que ode conter valores de diferentes tios comartilhando a mesma área de memória. Uma união é semelhante a uma struct, exceto que ela ermite definir variáveis

Leia mais

Melhores momentos AULA 5

Melhores momentos AULA 5 Melhores momentos AULA 5 Registros e structs structs. aniversario struct { int dia; int mes; int ano; } aniversario ; dia mes ano Registros e structs Para não repetir struct... o tempo todo podemos denir

Leia mais

Programação de Computadores II

Programação de Computadores II Programação de Computadores II Slides cedidos por Karina Mochetti 2018.1 Exercício Aula Passada Faça uma função que recebe uma matriz n m representada por ponteiros e desaloque toda a memória usada por

Leia mais

Plano de Aula Segunda-feira Tarde 13/10/2014 Objetivo: Introduzir o conceito de alocação dinâmica na memória e registros / structs.

Plano de Aula Segunda-feira Tarde 13/10/2014 Objetivo: Introduzir o conceito de alocação dinâmica na memória e registros / structs. Instituto Federal de Santa Catarina - Câmpus Chapecó Ensino Médio Integrado em Informática - Módulo IV Unidade Curricular: Programação Estruturada Professora: Lara Popov Zambiasi Bazzi Oberderfer Plano

Leia mais

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

Bruno Hott Algoritmos e Estruturas de Dados I DECSI UFOP. Alocação Dinâmica de Memória Bruno Hott Algoritmos e Estruturas de Dados I DECSI UFOP Alocação Dinâmica de Memória Alocação Estática x Dinâmica C: dois tipos de alocação de memória: Estática e Dinâmica Na alocação estática, o espaço

Leia mais

Ponteiros e Alocação Dinâmica. Prof. Péricles Miranda

Ponteiros e Alocação Dinâmica. Prof. Péricles Miranda Ponteiros e Alocação Dinâmica Prof. Péricles Miranda pbcm@cin.ufpe.br Memória A memória é formada por várias células. Cada célula contém um endereço e um valor. Memória Endereço Ao declararmos uma variável

Leia mais

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

Alocação Dinâmica. Túlio Toffolo  BCC202 Aula 02 Algoritmos e Estruturas de Dados I Alocação Dinâmica Túlio Toffolo tulio@toffolo.com.br www.toffolo.com.br BCC202 Aula 02 Algoritmos e Estruturas de Dados I Esquema de Memória baixa Código do Programa Variáveis Globais e Estáticas Memória

Leia mais

Linguagem C. Ponteiros. Alex Vidigal Bastos.

Linguagem C. Ponteiros. Alex Vidigal Bastos. Linguagem C Ponteiros Alex Vidigal Bastos alexvbh@gmail.com Ponteiros Ponteiros são variáveis que contém endereços. Estas variáveis apontam para algum determinado endereço da memória. Em geral, o ponteiro

Leia mais

Ponteiros e alocação dinâmica de memória. Disciplina de Programação de Computadores I Universidade Federal de Ouro Preto

Ponteiros e alocação dinâmica de memória. Disciplina de Programação de Computadores I Universidade Federal de Ouro Preto Ponteiros e alocação dinâmica de memória Disciplina de Programação de Computadores I Universidade Federal de Ouro Preto Agenda Ponteiros Ponteiros e vetores Passagem por cópia e por referência Alocação

Leia mais

Aula 25: Alocação Dinâmica

Aula 25: Alocação Dinâmica Aula 25: Alocação Dinâmica Introdução a Programação Túlio Toffolo & Puca Huachi http://www.toffolo.com.br BCC201 2019/1 Departamento de Computação UFOP Aulas anteriores Estruturas de memórias heterogêneas

Leia mais

Pausa para nossos comerciais

Pausa para nossos comerciais AULA 5 Pausa para nossos comerciais Plantão de dúvidas: Vinícius Horário: terças das 12h às 13h Onde: Rede Linux do IME, Bloco A, sala 127 Treinos para Maratona de Programação: Horário: quintas das 14h

Leia mais

Ponteiros. Baseado nos slides do Prof. Mauro.

Ponteiros. Baseado nos slides do Prof. Mauro. Baseado nos slides do Prof. Mauro. A memória do computador é uma sequência de bytes, na qual endereçamos cada um sequencialmente. Como vimos, uma variável é uma região da memória que reservamos para armazenar

Leia mais

BCC202 - Estrutura de Dados I

BCC202 - Estrutura de Dados I BCC202 - Estrutura de Dados I Aula 02: Alocação Dinâmica de Memória Reinaldo Fortes Universidade Federal de Ouro Preto, UFOP Departamento de Ciência da Computação, DECOM Website: www.decom.ufop.br/reifortes

Leia mais

BCC Introdu c ao ` a Programa c ao I Ponteiros Guillermo C amara-ch avez UFOP 1/61

BCC Introdu c ao ` a Programa c ao I Ponteiros Guillermo C amara-ch avez UFOP 1/61 BCC 201 - Introdução à Programação I Ponteiros Guillermo Cámara-Chávez UFOP 1/61 Ponteiros... I i n t main ( ) { i n t x ; x = 10 p r i n t f ( " Conteudo de x: %d \n", x ) ; p r i n t f ( " Endereco de

Leia mais

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

Alocação Dinâmica de Memória. David Menotti Algoritmos e Estruturas de Dados II DInf UFPR Alocação Dinâmica de Memória David Menotti Algoritmos e Estruturas de Dados II DInf UFPR Alocação Estática x Dinâmica C: dois tipos de alocação de memória: Estática e Dinâmica Na alocação estática, o espaço

Leia mais

Ponteiros - Parte I. Ponteiros, Ponteiros e Vetores, Algoritmo Bubble Sort, Alocação Dinâmica de Memória

Ponteiros - Parte I. Ponteiros, Ponteiros e Vetores, Algoritmo Bubble Sort, Alocação Dinâmica de Memória Ponteiros - Parte I Ponteiros, Ponteiros e Vetores, Algoritmo Bubble Sort, Alocação Dinâmica de Memória Ponteiros Um ponteiro é uma variável que contém um endereço de memória. Esse endereço é normalmente

Leia mais

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

Bruno Hott Algoritmos e Estruturas de Dados I DECSI UFOP. Alocação Dinâmica de Memória Bruno Hott Algoritmos e Estruturas de Dados I DECSI UFOP Alocação Dinâmica de Memória Alocação Estática x Dinâmica C: dois tipos de alocação de memória: Estática e Dinâmica Na alocação estática, o espaço

Leia mais

Alocação Dinâmica de Memória

Alocação Dinâmica de Memória Alocação Dinâmica de Memória Luiz Chaimowicz, Raquel O. Prates, Pedro O.S. Vaz de Melo Algoritmos e Estruturas de Dados II DCC UFMG Alocação Estática x Dinâmica C: dois tipos de alocação de memória: Estática

Leia mais

a) Preencher um vetor com os números 0 a 10, e depois mostrar somente os elementos pares.

a) Preencher um vetor com os números 0 a 10, e depois mostrar somente os elementos pares. Instituto Federal de Santa Catarina - Câmpus Chapecó Ensino Médio Integrado em Informática - Módulo IV Unidade Curricular: Programação Estruturada Professora: Lara Popov Zambiasi Bazzi Oberderfer Plano

Leia mais

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

Linguagem C: Ponteiros - Alocação Dinâmica Prof. Paulo R. S. L. Coelho paulo@facom.ufu.br Faculdade de Computação Universidade Federal de Uberlândia GEQ007 Organização 1 Ponteiros Alocação Dinâmica de Memória 2 3 4 Organização Ponteiros Alocação

Leia mais

Introdução à Ciência da Computação I. Alocação Dinâmica. Prof. Claudio Fabiano Motta Toledo

Introdução à Ciência da Computação I. Alocação Dinâmica. Prof. Claudio Fabiano Motta Toledo Introdução à Ciência da Computação I Alocação Dinâmica Prof. Claudio Fabiano Motta Toledo Sumário Funções para alocação de memória Ponteiros para ponteiros 8/12/16 2 Funções para alocação de memória malloc(),

Leia mais

Aula 17: Ponteiros e Alocação Dinâmica em C

Aula 17: Ponteiros e Alocação Dinâmica em C Aula 17: Ponteiros e Alocação Dinâmica em C Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Ponteiros e Alocação Dinâmica Programação de Computadores

Leia mais

INF 1007 Programação II

INF 1007 Programação II INF 1007 Programação II Aula 08 Vetor de Ponteiros Edirlei Soares de Lima Vetor de Cadeia de Caracteres Um vetor de cadeia de caracteres pode ser alocado de duas formas: Alocação

Leia mais

Ponteiro. Ponteiro. Objetivo. Compreender a definição e dominar a implementação de ponteiros em C.

Ponteiro. Ponteiro. Objetivo. Compreender a definição e dominar a implementação de ponteiros em C. Ponteiro Definição de variável apontadora Aritmética de ponteiros Ponteiros e vetores Funções e passagem por referência Structs e ponteiros Alocação dinâmica de memória Objetivo Ponteiro Ponteiro Compreender

Leia mais

Ponteiros e Alocação de Memória

Ponteiros e Alocação de Memória Algoritmos e Estrutura de Dados I Ponteiros e Alocação de Memória Prof. Paulo Henrique Pisani fevereiro/2019 Memória Podemos entender a memória como um grande vetor de bytes devidamente endereçados: 0x1051

Leia mais

Alocação Dinâmica de Memória

Alocação Dinâmica de Memória Alocação Dinâmica de Memória Elerson R. S. Santos elerson@dcc.ufmg.br Algoritmos e Estruturas de DCC UFMG Variáveis Uma variável representa um nome simbólico para uma posição de memória. Cada posição de

Leia mais

Introdução à Computação

Introdução à Computação Introdução à Computação Linguagem C Professor: André de Carvalho Aula de hoje Introdução Tipos compostos Tipo enumeração Conclusão Tipos compostos A Linguagem C permite criar tipos de dados definíveis

Leia mais

INF 1007 Programação II

INF 1007 Programação II INF 1007 Programação II Aula 07 Vetor de Ponteiros Edirlei Soares de Lima Vetor de Cadeia de Caracteres Vetores de cadeias de caracteres. Exemplo: char alunos[50][81]; Função para

Leia mais

Ponteiros & tabelas (cont.) K&R: Capítulo 5

Ponteiros & tabelas (cont.) K&R: Capítulo 5 Ponteiros & tabelas (cont.) K&R: Capítulo 5 Sinopse da aula de hoje Pointers in a nutshell & alocação dinâmica de memória Estruturas, funções e apontadores Estruturas auto-referenciadas Exemplo de aplicação:

Leia mais

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

Programação Estruturada Prof. Rodrigo Hausen  Organização e Gerenciamento de Memória Programação Estruturada Prof. Rodrigo Hausen http://progest.compscinet.org Organização e Gerenciamento de Memória 1 AULA PASSADA - vetores ou arrays Declaração de um vetor (array) em C: tipo nome[tamanho];

Leia mais

Curso de Programação C em Ambientes Linux Aula 05

Curso de Programação C em Ambientes Linux Aula 05 Curso de Programação C em Ambientes Linux Aula 05 Centro de Engenharias da Mobilidade - UFSC Professores Gian Berkenbrock e Giovani Gracioli http://www.lisha.ufsc.br/c+language+course+resources Conteúdo

Leia mais

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

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 Exercícios 1) Crie uma função que recebe os coeficientes de uma função do 2o. grau e retorna as raízes sem usar vetor. 2) Faça um programa que acha o maior e o menor inteiro dentro de um vetor de 10 inteiros,

Leia mais

Introdução a Programação. Ponteiros e Vetores, Alocação Dinâmica

Introdução a Programação. Ponteiros e Vetores, Alocação Dinâmica Introdução a Programação Ponteiros e Vetores, Alocação Dinâmica Tópicos da Aula Hoje aprenderemos que existe uma forte relação entre ponteiros e vetores Associação entre ponteiros e vetores Ponteiros constantes

Leia mais

Ponteiros e Tabelas. K&R: Capitulo 5 IAED, 2012/2013

Ponteiros e Tabelas. K&R: Capitulo 5 IAED, 2012/2013 Ponteiros e Tabelas K&R: Capitulo 5 Ponteiros e Tabelas Ponteiros e endereços Ponteiros e argumentos de funções Ponteiros e tabelas Alocação dinâmica de memória Aritmética de ponteiros Tabelas de ponteiros

Leia mais

Ponteiros e Tabelas. K&R: Capitulo 5 IAED, 2012/2013

Ponteiros e Tabelas. K&R: Capitulo 5 IAED, 2012/2013 Ponteiros e Tabelas K&R: Capitulo 5 Ponteiros e Tabelas Ponteiros e endereços Ponteiros e argumentos de funções Ponteiros e tabelas Alocação dinâmica de memória Aritmética de ponteiros Tabelas de ponteiros

Leia mais

Ponteiros. Embora o programador não tenha acesso ao endereço de uma variável, existem algumas situações onde é necessário a utilização deste endereço.

Ponteiros. Embora o programador não tenha acesso ao endereço de uma variável, existem algumas situações onde é necessário a utilização deste endereço. Logo Aula 06 Ponteiros 2 Ponteiros Embora o programador não tenha acesso ao endereço de uma variável, existem algumas situações onde é necessário a utilização deste endereço. Um exemplo clássico disto

Leia mais

Aula 24: Ponteiros e Alocação Dinâmica

Aula 24: Ponteiros e Alocação Dinâmica Aula 24: Ponteiros e Alocação Dinâmica Introdução a Programação Túlio Toffolo & Puca Huachi http://www.toffolo.com.br BCC201 2018/2 Departamento de Computação UFOP Aula anterior Memória Ponteiro Utilização

Leia mais

1 Exercícios com ponteiros

1 Exercícios com ponteiros Computação para Informática Funções e Ponteiros1 EXERCÍCIOS COM PONTEIROS Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Aula Prática - Funções e ponteiros O objetivo desta aula prática

Leia mais

INF 1007 Programação II

INF 1007 Programação II INF 1007 Programação II Aula 04 Alocação Dinâmica Edirlei Soares de Lima Vetores - Declaração e Inicialização Declaração de um vetor: int meu_vetor[10]; Reserva um espaço de memória

Leia mais

Estruturas dinâmicas Ponteiros

Estruturas dinâmicas Ponteiros SSC0102 LABORATÓRIO DE INTRODUÇÃO À CIÊNCIA DA COMPUTAÇÃO I Estruturas dinâmicas Ponteiros Prof. Claudio Fabiano Motta Toledo SUMÁRIO Ponteiros e Vetores Funções para alocação de memória PONTEIROS Declaração

Leia mais

ANHANGUERA ESTRUTURA DE DADOS AULA 04 MATRIZES, LISTAS E ALOCAÇÃO DINÂMICA. Prof. Thomás da Costa

ANHANGUERA ESTRUTURA DE DADOS AULA 04 MATRIZES, LISTAS E ALOCAÇÃO DINÂMICA. Prof. Thomás da Costa ANHANGUERA 2015.2 ESTRUTURA DE DADOS AULA 04 Prof. Thomás da Costa thomascosta@aedu.com O que é: Matrizes São vetores que possuem duas ou mais dimensões para armazenar valores. Uma matriz de duas dimensões,

Leia mais

LINGUAGEM C: ALOCAÇÃO DINÂMICA

LINGUAGEM C: ALOCAÇÃO DINÂMICA LINGUAGEM C: ALOCAÇÃO DINÂMICA Prof. André Backes DEFINIÇÃO Sempre que escrevemos um programa, é preciso reservar espaço para as informações que serão processadas. Para isso utilizamos as variáveis Uma

Leia mais

ESTRUTURA DE DADOS VARIÁVEIS E PONTEIROS

ESTRUTURA DE DADOS VARIÁVEIS E PONTEIROS ESTRUTURA DE DADOS VARIÁVEIS E PONTEIROS Prof. Dr. Daniel Caetano 2014-2 Objetivos Compreender a organização dos dados na memória Compreender o que são ponteiros Capacitar para implementar programas com

Leia mais

CAP. 5. TÉCNICAS DE ORDENAÇÃO

CAP. 5. TÉCNICAS DE ORDENAÇÃO C.. ÉCC D DÇÃ UU D DD C- rof. aulo ndré Castro auloac@ta.br ala rédo da Comutação www.com.ta.br/~auloac C -.. ntrodução.. étodos smles de ordenação.. método hell-ort.. método Quck-ort. DUÇÃ rdenação é

Leia mais

SSC304 Introdução à Programação Para Engenharias. Alocação Dinâmica. GE4 Bio

SSC304 Introdução à Programação Para Engenharias. Alocação Dinâmica. GE4 Bio Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação Introdução à Para Engenharias GE4 Bio GE4Bio Grupo de Estudos em Sinais Biológicos Prof.Dr.

Leia mais

MC-102 Aula 19 Ponteiros II

MC-102 Aula 19 Ponteiros II MC-102 Aula 19 Ponteiros II Instituto de Computação Unicamp 20 de Outubro de 2016 Roteiro 1 Ponteiros e Alocação Dinâmica 2 Exemplo de Alocação Dinâmica de Vetores 3 Erros Comuns ao Usar Alocação Dinâmica

Leia mais

Princípios de Desenvolvimento de Algoritmos MAC122

Princípios de Desenvolvimento de Algoritmos MAC122 Princípios de Desenvolvimento de Algoritmos MAC122 Prof. Dr. Paulo Miranda IME-USP Alocação Dinâmica de Memória Motivação: Nossos programas pré-fixavam o número de variáveis a serem utilizadas. No caso

Leia mais

Reinaldo Gomes Alocação Dinâmica

Reinaldo Gomes Alocação Dinâmica Algoritmos e Lógica de Programação Linguagem C Alocação Dinâmica i de Memória Reinaldo Gomes reinaldo@cefet-al.br Alocação Dinâmica Quando declaramos uma variável ou um arranjo, o compilador automaticamente

Leia mais

Estrutura de dados 1. Ponteiros

Estrutura de dados 1. Ponteiros Estrutura de dados 1 Ponteiros Ponteiros Um ponteiro é um endereço de memória O valor de um ponteiro indica onde uma variável está armazenada Um ponteiro proporciona um modo de acesso a uma variável sem

Leia mais

Programação Estruturada

Programação Estruturada Programação Estruturada Ponteiros Parte 1 Professores Emílio Francesquini e Carla Negri Lintzmayer 2018.Q3 Centro de Matemática, Computação e Cognição Universidade Federal do ABC Ponteiros Ponteiro Ponteiros

Leia mais

Exercício. 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

Exercício. 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 Exercício Crie uma função que recebe o número de dias até um determinado evento e calcula e retorna o equivalente em meses, semanas e dias, sem usar vetor ou o conceito de vetor. Considerar que todos os

Leia mais

Ponteiros. Considere um carteiro recém-chegado na vila Na vila, a referência para se encontrar a casa é pelo morador

Ponteiros. Considere um carteiro recém-chegado na vila Na vila, a referência para se encontrar a casa é pelo morador Ponteiros Considere um carteiro recém-chegado na vila Na vila, a referência para se encontrar a casa é pelo morador Ponteiros Introdução à Computação 1 de 17 Ponteiros No entanto, as cartas são direcionadas

Leia mais

11a. Aula Ponteiros e Vetores

11a. Aula Ponteiros e Vetores 11a. Aula Ponteiros e Vetores 2013.2 2 É um tipo de variável com uma ressalva...... armazena apenasendereçode memória (ou null) Se eu tiver o endereço da casa de Francisca, eu poderei visitá-la e lhe fazer

Leia mais

Linguagem C Ponteiros

Linguagem C Ponteiros Linguagem C Ponteiros Instituto Federal de Educação, Ciência e Tecnologia do Triângulo Mineiro Prof. Edwar Saliba Júnior Janeiro de 2018 Unidade 14 Linguagem C - Ponteiros 1/24 Identificadores e Endereços

Leia mais

Aula 24 Ponteiros, vetores e structs

Aula 24 Ponteiros, vetores e structs Programação Aula 24 Ponteiros, vetores e structs Prof. Laura Silva de Assis Engenharia de Computação 2 o Período CEFET/RJ - Centro Federal de Educação Tecnológica Celso Suckow da Fonseca UnED Petrópolis

Leia mais

Professora Jeane Melo

Professora Jeane Melo Professora Jeane Melo Roteiro Lista Encadeada Alocação: Estática x Dinâmica O que são Ponteiros? Ponteiros Variáveis que Armazenam Endereços de Memória Mas, toda variável não é armazenada na memória? Ponteiros

Leia mais

Aula 18: Funções em C

Aula 18: Funções em C Aula 18: Funções em C Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Funções em C Programação de Computadores IV 1 / 38 Agenda 1 Revisão e Contexto

Leia mais

Laboratório de Programação II

Laboratório de Programação II Laboratório de Programação II Aula 08 Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br http://www.diemesleno.com.br Na aula passada vimos... Na aula passada vimos... 07 Entradas e saídas padronizadas;

Leia mais

Matrizes. Estruturas de Dados Aula 5: Matrizes. Vetor declaração estática. Vetor declaração dinâmica

Matrizes. Estruturas de Dados Aula 5: Matrizes. Vetor declaração estática. Vetor declaração dinâmica Matrizes Estruturas de Dados Aula 5: Matrizes 22/03/2010 Conjuntos bidimensionais declarados estaticamente float mat[4][3]; Declaração de um vetor (estática ou dinâmica?) int v[10] int *v; v = (int*) malloc

Leia mais

BCC Introdu c ao ` a Programa c ao I Ponteiros Guillermo C amara-ch avez UFOP 1/54

BCC Introdu c ao ` a Programa c ao I Ponteiros Guillermo C amara-ch avez UFOP 1/54 BCC 201 - Introdução à Programação I Ponteiros Guillermo Cámara-Chávez UFOP 1/54 Ponteiros... I i n t main ( ) { i n t x ; x = 10 cout

Leia mais

Ponteiros e Tabelas. K&R: Capítulo 5

Ponteiros e Tabelas. K&R: Capítulo 5 Ponteiros e Tabelas K&R: Capítulo 5 Ponteiros e Tabelas Ponteiros e endereços Ponteiros e argumentos de funções Ponteiros e tabelas Alocação dinâmica de memória Aritmética de ponteiros Tabelas de ponteiros

Leia mais

Estruturas de Dados Aula 5: Matrizes 23/03/2011

Estruturas de Dados Aula 5: Matrizes 23/03/2011 Estruturas de Dados Aula 5: Matrizes 23/03/2011 Matrizes Conjuntos bidimensionais declarados estaticamente float mat[4][3]; Declaração de um vetor (estática ou dinâmica?) int v[10] int *v; v = (int*) malloc

Leia mais

Alocação Dinâmica. Introdução à Computação

Alocação Dinâmica. Introdução à Computação Alocação Dinâmica Introdução à Computação Alocação de memória Uso da memória: uso de variáveis globais (e está>cas): O espaço reservado para uma variável global existe enquanto o programa es>ver sendo

Leia mais

CES-11. Algoritmos e Estruturas de Dados. Esclarecimento sobre notação. Revisão. Revisão

CES-11. Algoritmos e Estruturas de Dados. Esclarecimento sobre notação. Revisão. Revisão CES-11 Algoritmos e Estruturas de Dados Aula de revisão sobre rogramação Carlos Forster Carlos Alonso Juliana Bezerra Revisão CES-11 Tios escalares rimitivos Tios constituídos de uma linguagem Ponteiros

Leia mais

1 Exercícios com ponteiros

1 Exercícios com ponteiros Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Oitava Aula Prática - 29 de outubro de 2010 O objetivo desta aula prática é exercitar ponteiros e funções. 1 Exercícios com ponteiros

Leia mais

Introdução a Programação. Ponteiros e Strings, Alocação Dinâmica

Introdução a Programação. Ponteiros e Strings, Alocação Dinâmica Introdução a Programação Ponteiros e Strings, Alocação Dinâmica Tópicos da Aula Hoje aprenderemos a relação entre ponteiros e strings Ponteiros para strings X Vetores de Caracteres Vetores de ponteiros

Leia mais

Ponteiros em C. Prof. Rui Jorge Tramontin Jr. UDESC - Rui J. Tramontin Jr. 1

Ponteiros em C. Prof. Rui Jorge Tramontin Jr. UDESC - Rui J. Tramontin Jr. 1 Ponteiros em C Prof. Rui Jorge Tramontin Jr. UDESC - Rui J. Tramontin Jr. 1 Índice Introdução Operações sobre Ponteiros Exemplos Ponteiros e Funções Alocação Dinâmica em C UDESC - Rui J. Tramontin Jr.

Leia mais

Modulo 12: alocação dinâmica de memória

Modulo 12: alocação dinâmica de memória PROGRAMAÇÃO DE COMPUTADORES V - TCC- 00.323 Modulo 12: alocação dinâmica de memória Aura - Erick aconci@ic.uff.br, erickr@id.uff.br Roteiro porque e como utilizar a alocação dinâmica funções: malloc (

Leia mais

Estruturas de Dados Aula 5: Matrizes

Estruturas de Dados Aula 5: Matrizes Estruturas de Dados Aula 5: Matrizes Matrizes Conjuntos bidimensionais declarados estaticamente float mat[4][3]; Declaração de um vetor (estática ou dinâmica?) int v[10] int *v; v = (int*) malloc (n*sizeof(int));

Leia mais

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

Algoritmos e Estruturas de Dados. Prof. Marcelo Zorzan Profa. Melissa Zanatta Algoritmos e Estruturas de Dados Prof. Marcelo Zorzan Profa. Melissa Zanatta Assuntos da Aula Alocação de Memória Alocação estática de memória Alocação dinâmica de memória Malloc, Calloc, Free, Realloc

Leia mais

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

Estruturas de Dados. Introdução Definição de Ponteiros Declaração de Ponteiros em C Manipulação de Ponteiros em C Estruturas de Dados Revisão de Ponteiros Prof. Ricardo J. G. B. Campello Sumário Introdução Definição de Ponteiros Declaração de Ponteiros em C Manipulação de Ponteiros em C Operações Ponteiros e Arranjos

Leia mais

Introdução a Programação. Ponteiros para Estruturas, Outros Tipos de Estruturas

Introdução a Programação. Ponteiros para Estruturas, Outros Tipos de Estruturas Introdução a Programação Ponteiros para Estruturas, Outros Tipos de Estruturas Tópicos da Aula Hoje aprenderemos a trabalhar com ponteiros para estruturas Ponteiros para estruturas Alocação dinâmica de

Leia mais

O que é um apontador em C (type pointer in C)?

O que é um apontador em C (type pointer in C)? O que é um apontador em C (type pointer in C)? Um apontador é uma variável que contém um endereço de outra variável. int x = 10;//variável inteira iniciada com o valor 10 int *px = &x;//variável apontadora

Leia mais

Gilberto A. S. Segundo. 24 de agosto de 2011

Gilberto A. S. Segundo. 24 de agosto de 2011 Exercícios - Alocação Dinâmica Gilberto A. S. Segundo Programação Aplicada de Computadores Engenharia Elétrica Universidade Federal do Espírito Santo - UFES 24 de agosto de 2011 1 / 23 Grupo de e-mail

Leia mais

Estruturas Dinâmicas - Ponteiros

Estruturas Dinâmicas - Ponteiros SSC0800 - ICC1 Teórica Introdução à Ciência da Computação I Estruturas Dinâmicas - Ponteiros Prof. Claudio Fabiano Motta Toledo: claudio@icmc.usp.br Sumário Ponteiros Ponteiros e Vetores Funções para alocação

Leia mais

Ponteiros. Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista

Ponteiros. Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista Ponteiros SCC0202 - Algoritmos e Estruturas de Dados I Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências

Leia mais

DAS5102 Fundamentos da Estrutura da Informação

DAS5102 Fundamentos da Estrutura da Informação Ponteiros e Funções Funções ou sub-rotinas são parcelas de código que podem ser invocadas a partir do programa principal ou até mesmo por outras sub-rotinas. Elas têm como objetivo a execução de uma tarefa

Leia mais

Laboratório de Introdução à Ciência da Computação I

Laboratório de Introdução à Ciência da Computação I Laboratório de Introdução à Ciência da Computação I Aula 12 Alocação dinâmica de memória Professor: Jó Ueyama Estagiária PAE: Aurea Soriano slide 1 Funções para alocação de memória malloc(), calloc(),

Leia mais

Linguagem de Programação

Linguagem de Programaçã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

Leia mais

INTRODUÇÃO À LINGUAGEM C. Prof. Msc. Luis Filipe Alves Pereira 2015

INTRODUÇÃO À LINGUAGEM C. Prof. Msc. Luis Filipe Alves Pereira 2015 INTRODUÇÃO À LINGUAGEM C Prof. Msc. Luis Filipe Alves Pereira 2015 INTRODUÇÃO À LINGUAGEM C 02/23 INTRODUÇÃO Criada em 1972 na AT&T Bell Labs É uma das linguagens mais populares. Existem poucas arquiteturas

Leia mais

INF 1620 P3-21/06/08 Questão 1 Nome:

INF 1620 P3-21/06/08 Questão 1 Nome: INF 1620 P3-21/06/08 Questão 1 Dada uma lista encadeada de números inteiros cujo tipo que representa um nó da lista é dado por: struct lista { int info; struct lista *prox; typedef struct lista Lista;

Leia mais

Algoritmos e Estruturas de dados

Algoritmos e Estruturas de dados Algoritmos e Estruturas de dados Listas Encadeadas Prof. Dr. Fábio Rodrigues de la Rocha (Listas Encadeadas) 1 / 21 Definição: Anteriormente estudamos listas encadeadas que foram implementadas como vetores

Leia mais

Aula 27: Estruturas heterogêneas e alocação dinâmica

Aula 27: Estruturas heterogêneas e alocação dinâmica Aula 27: Estruturas heterogêneas e alocação dinâmica Introdução a Programação Túlio Toffolo & Puca Huachi http://www.toffolo.com.br BCC201 2018/2 Departamento de Computação UFOP Aulas anteriores Memória

Leia mais

Estruturas de Dados Aulas 3 e 4: Uso da memória e Vetores

Estruturas de Dados Aulas 3 e 4: Uso da memória e Vetores Estruturas de Dados Aulas 3 e 4: Uso da memória e Vetores Uso da memória Existem 3 maneiras de reservar o espaço da memória: Variáveis globais (estáticas) Espaço existe enquanto programa estiver executando

Leia mais

A linguagem C permite dois tipos de alocação de memória: Alocação estática e alocação dinâmica.

A linguagem C permite dois tipos de alocação de memória: Alocação estática e alocação dinâmica. Alocação de Memória Todo programa precisa utilizar memória para ser executado. Quando um programa inicia sua execução, ele começa a solicitar memória ao sistema operacional, ou seja, faz a alocação de

Leia mais

Programação de Computadores II

Programação de Computadores II Programação de Computadores II 2019.1 Endereço e Ponteiro Endereço Ao colocarmos o símbolo & temos o endereço daquela variável. Ponteiro Ao colocarmos o símbolo * temos o valor da variável armazenada num

Leia mais

13. ALOCAÇÃO DINÂMICA DE MEMÓRIA

13. ALOCAÇÃO DINÂMICA DE MEMÓRIA 787878787878787878787878787878787878787878787878787878 13. ALOCAÇÃO DINÂMICA DE MEMÓRIA Sempre é necessário declarar o número de elementos do array. Mas e se ele for desconhecido? E se ele variar? Pode

Leia mais

Alocação Dinâmica em C

Alocação Dinâmica em C Universidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação Alocação Dinâmica em C Profa Rosana Braga Adaptado de material preparado pela profa Silvana Maria Affonso de Lara

Leia mais

Programação Procedimental GBC /1 Prof. Renan Cattelan Prática 10. Estruturas e alocação dinâmica

Programação Procedimental GBC /1 Prof. Renan Cattelan  Prática 10. Estruturas e alocação dinâmica Programação Procedimental GBC014 2015/1 Prof. Renan Cattelan www.facom.ufu.br/~renan Prática 10 Estruturas e alocação dinâmica Exercício Crie um programa para armazenar uma agenda de contatos pessoais

Leia mais

A sintaxe para se declarar uma variável do tipo ponteiro é dada por:

A sintaxe para se declarar uma variável do tipo ponteiro é dada por: Pense duas vezes e faça uma vez. Provérbio Chinês. PONTEIROS Um ponteiro nada mais é que uma variável capaz de armazenar um número hexadecimal que corresponde a um endereço de memória de outra variável.

Leia mais

PONTEIROS E LISTAS. Kalinka Regina Lucas Jaquie Castelo Branco

PONTEIROS E LISTAS. Kalinka Regina Lucas Jaquie Castelo Branco PONTEIROS E LISTAS Kalinka Regina Lucas Jaquie Castelo Branco kalinka@icmc.usp.br ALOCAÇÃO DINÂMICA DE MEMÓRIA Pode-se assumir que as variáveis declaradas na cláusula variável do pseudo-código do algoritmo

Leia mais

Básico: estrutura de programa, sintaxe Interface com linha de comando

Básico: estrutura de programa, sintaxe Interface com linha de comando Programação em C Sintaxe Básico: estrutura de programa, sintaxe Interface com linha de comando Preprocessamento e compilação Makefiles Ponteiros e estruturas Bibliotecas, ficheiros include e funções Referências

Leia mais

ED1 - Aula 01 Introducao e revisão

ED1 - Aula 01 Introducao e revisão ED1 - Aula 01 Introducao e revisão Profa. Nádia Félix Hebert Coelho Instituto de Informática Universidade Federal de Goiás Roteiro Detalhes do curso Plano de Ensino sharif Revisão Tipos Construídos Alocação

Leia mais

ALOCAÇÃO DINÂMICA DE MEMÓRIA

ALOCAÇÃO DINÂMICA DE MEMÓRIA INE5408 Estruturas de Dados Semestre 2008/1 Prof. Leandro J. Komosinski ALOCAÇÃO DINÂMICA DE Memória de Computador 1 byte = 8 bits (ex.: 00100110) 1 KB = 1024 bytes 1 MB = 1024 KB 1 GB = 1024 MB Meu computador

Leia mais

Representação de Dados Arrays e Structs

Representação de Dados Arrays e Structs Representação de Dados Arrays e Structs Noemi Rodriguez Ana Lúcia de Moura http://www.inf.puc-rio.br/~inf1018 Representação de Arrays C usa uma implementação bastante simples alocação contígua na memória

Leia mais