1. Revisão de Vetores, Ponteiros, Funções e Estruturas em C
|
|
- Maria Luiza Macedo Bayer
- 5 Há anos
- Visualizações:
Transcrição
1 Introdução à Computação II Revisão de Vetores, Ponteiros, Funções e Estruturas em C Prof. Renato Tinós Local: Depto. de Computação e Matemática (FFCLRP/USP) 1
2 Principais Tópicos 1.1. Revisão de Vetores em C Strings Matrizes 1.2. Revisão de Ponteiros em C 1.3. Revisão de Funções em C 1.4. Revisão de Estruturas em C 1.5. Alocação Dinâmica de Vetores 2
3 1.1. Vetores Tipos de dados atômicos em C char 8 bits (1 byte) int 16 ou 32 bits (2 ou 4 bytes) short int 16 bits (2 bytes) long int 32 bits (4 bytes) float 32 bits (4 bytes) double 64 bits (8 bytes) long double 80 bits (10 bytes) 3
4 1.1. Vetores Definição: coleção de valores de dados individuais com as seguintes características: Contém tipos de dados homogêneos Ex.: vetor de inteiros só pode ter elementos do tipo inteiro Contém dados que podem ser ordenados 4
5 1.1. Vetores Pode-se pensar em um vetor como uma seqüência de dados atômicos Os dados atômicos em um vetor são chamados de elementos Vetor possui duas propriedades fundamentais Tipo de elemento Tamanho do vetor 5
6 1.1. Vetores Declaração tipo nome[tamanho] Ex.: int vetor[10]; Tamanho do vetor pode ser especificado como uma constante Facilita mudança do tamanho Ex.: #define NElementos 10 int vetor[nelementos]; 6
7 1.1. Vetores Indexação Cada elemento de um vetor é identificado por um índice Em C, o primeiro elemento tem índice igual a 0 e o último tem índice igual ao número de elementos 1 Ex. vetor de 4 elementos possui os índices 0, 1, 2, 3 7
8 1.1. Vetores Para se referir a um elemento específico de um vetor, devem ser fornecidos: Nome do vetor Índice correspondente à posição do elemento dentro do vetor Ex.: A nota do segundo juiz é dada por notas[1] 8
9 1.1. Vetores Expressão com seleção Funciona como uma simples variável Ex.: nota[2] = 9.4; É importante distinguir entre índice de um elemento e valor de um elemento nota Índice = 2 Valor = 9.4 9
10 1.1. Vetores Expressão com seleção É possível mudar os valores em um vetor, mas nunca o seu tamanho Valor do índice não precisa ser uma constante Pode ser qualquer expressão cujo resultado é um tipo escalar (Ex.: int, short, long) for (i = 0; i < NJuizes; i++){ notas[i] = 0.0; } 10
11 1.1. Vetores Tamanho do vetor Deve ser constante Muitas vezes não se sabe quantos elementos o vetor vai conter Estratégias Declarar tamanho como o número máximo de elementos possível (tamanho alocado)» Declarar um inteiro para indicar número de elementos utilizados (tamanho efetivo) Alocação dinâmica 11
12 1.1. Vetores Inicialização de vetores Valores iniciais podem ser atribuídos a uma variável do tipo vetor quando da sua declaração Ex.: int digitos[10] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 } Neste caso, o tamanho do vetor pode ser omitido Ex.: int digitos[ ] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 } Obs.: A Linguagem C não checa se você passou dos limites de um vetor 12
13 1.1. Vetores Exemplo Vetores /* Programa: Vetores*/ # include <stdio.h> main(){ int val[100]; int i; } for (i = 0; i < 100; ++i){ val[i] = i; } 13
14 Strings Strings são representados internamente como vetores de caracteres Caracteres são armazenados em bytes consecutivos Final de string é representado por \0 Ex.: Compilador C reserva 6 bytes para o string Hello Declaração: char hello = { H, e, l, l, o, \0 }; ou char str[6] = Hello ; H e l l o \0 14
15 Strings Como strings são vetores, elementos individuais podem ser selecionados e manipulados int i, n_espacos; n_espacos = 0; for (i = 0; str[i]!= \0 ; i++){ if (str[i] == ) n_espacos++; } 15
16 Strings Bibliotecas de operações sobre strings Exporta operações que permitem a manipulação de strings Interface ANSI string.h para manipular strings Biblioteca padrão da linguagem C Fornece um conjunto de operações avançadas Permite trabalhar com o string inteiro utilizando uma simples chamada de função 16
17 Strings Funções mais comuns de string.h : Nome strcpy (s1, s2) strcat (s1, s2) strlen (s1) strcmp (s1, s2) strchr (s1, ch) strstr (s1, s2) Função Copia s2 em s1 Concatena s2 ao final de s1 Retorna o tamanho de s1 Retorna 0 se s1 ==s2; menor que 0 se s1<s2; maior que 0 se s1>s2 Retorna um ponteiro para a primeira ocorrência de ch em s1 Retorna um ponteiro para a primeira ocorrência de s2 em s1 17
18 Matrizes São vetores multi-dimensionais Quando os elementos de um vetores são vetores Ex.: double mat [3][3]; mat[0][0] mat[0][1] mat[0][2] mat[1][0] mat[1][1] mat[1][2] mat[2][0] mat[2][1] mat[2][2] 18
19 Matrizes mat [0] mat [1] mat [2] { { { mat [0] [0] mat [0] [1] mat [0] [2] mat [1] [0] mat [1] [1] mat [1] [2] mat [2] [0] mat [2] [1] mat [2] [2] Internamente, C representa mat como um vetor de três elementos Cada elemento é um vetor de três valores ponto-flutuantes Na memória, estes nove valores formam uma lista unidimensional 19
20 Matrizes Inicialização Como os vetores, podem ser inicializadas na declaração Para enfatizar a estrutura geral, valores de cada vetor interno são inicializados entre chaves double ident [3][3] = { {1.0, 0.0, 0.0 }, {0.0, 1.0, 0.0 }, {0.0, 0.0, 1.0 } }; 20
21 Matrizes Exemplo Matrizes /* Programa: Matrizes */ #include <stdio.h> main() { } int t, i, num[3][4]; for(t=0; t<3; ++t) { for(i=0; i<4; ++i) { num[t][i] = 0; } } 21
22 1.2. Ponteiros Apontadores Variável que contém um endereço de memória Este endereço é geralmente a posição de uma outra variável na memória Quando uma variável contém o endereço de uma outra, diz-se que a primeira variável aponta para a segunda 22
23 1.2. Ponteiros Endereço Valor de uma variável do tipo ponteiro Memória 23
24 1.2. Ponteiros Por que usar? Permitem que as funções possam modificar seus argumentos de chamada São usados para suportar rotinas de alocação de memória permitem que novos vetores sejam alocados durante a execução do programa Podem substituir as matrizes proporcionando aumento da eficiência 24
25 1.2. Ponteiros Por outro lado, ponteiros são perigosos Podem causar o travamento do sistema quando Não-inicializados São utilizados incorretamente (descuidados) Podem causar bugs nos programas quando São utilizados incorretamente 25
26 1.2. Ponteiros Variáveis ponteiros devem ser declaradas como tal tipo-base *nome-da-variavel O tipo base do ponteiro define que tipo de variáveis o ponteiro pode apontar Tecnicamente, qualquer tipo de ponteiro pode apontar para qualquer lugar na memória Aritmética de ponteiros é feita pelo tipo base, assim é importante declarar o ponteiro corretamente 26
27 1.2. Ponteiros Operadores de ponteiros Operador unário & fornece o endereço na memória de seu operando (variável ou constante) Ex.: m = &val; & pode ser lido como endereço de Operador unário * é o complemento de & Devolve o valor da variável armazenada no endereço que o segue Ex.: x = *val; * pode ser lido como no endereço 27
28 1.2. Ponteiros Exemplo Ponteiros /* Programa: ponteiro 1*/ #include <stdio.h> main( ){ int x, y; int *p1; x = 100; p1 = &x; / * pega o endereço de x! */ y = *p1; / * pega o valor de x! */ printf("%d", y); /* escreve o valor de x! */ } 28
29 1.2. Ponteiros Exemplo Ponteiros /* Programa: ponteiro 2*/ #include <stdio.h> void main(void){ int x; int *p1, *p2; p1 = &x; p2 = p1; } printf("%p", p2); /* escreve o valor hexadecimal do endereco de x! */ 29
30 1.2. Ponteiros Relacionamento entre ponteiros e vetores Em C, o nome de um vetor tem como valor o endereço do primeiro elemento deste vetor Ex.: int lista[5]; /* lista é idêntico a &lista[0] */ Nome de um vetor equivale a um ponteiro para o primeiro elemento do vetor Nome de um vetor pode ser atribuído a uma variável do tipo ponteiro Usado quando um vetor é passado de uma função para outra 30
31 1.2. Ponteiros Diferença entre ponteiros e vetores ocorre na alocação de memória durante a declaração Ex.: int vet[5]; Reserva 5 posições consecutivas, cada uma capaz de armazenar um valor do tipo inteiro Ex.: int *p; Reserva apenas uma palavra Suficiente para armazenar um endereço de memória 31
32 1.2. Ponteiros Como usar um ponteiro como um vetor: Atribuir ao ponteiro o endereço base do vetor Ex. p = vet; /*p e vetor se tornam sinônimos */ Ponteiro pode ser inicializado para uma nova memória que ainda não foi utilizada Permite a criação de novos vetores durante execução do programa (alocação dinâmica) 32
33 1.2. Ponteiros Funcionamento do tipo vetor Ex.: double lista [3]; Reserva espaço para três variáveis do tipo double (tipo double ocupa 8 bytes) Cada elemento de um vetor é um valor O vetor lista tem um endereço Endereço pode ser definido com o operador & lista [0] lista [1] lista [2] 33
34 1.2. Ponteiros Sejam as declarações: double lista [3]; double *p; lista [0] lista [1] 1016 lista [2] 1024 p 34
35 1.2. Ponteiros Um ponteiro pode indicar para outro ponteiro O primeiro ponteiro contém o endereço do segundo ponteiro, que aponta para uma variável com o valor desejado Declaração tipo **nome; Pode ser usado em matrizes 35
36 1.3. Funções Função ou Procedimento ou Sub-Rotina Agrupa um conjunto de comandos e associa a ele um nome O uso deste nome é uma chamada da função Após sua execução, programa volta ao ponto do programa situado imediatamente após a chamada A volta ao programa que chamou a função é chamada de retorno 36
37 1.3. Funções A chamada de uma função pode passar informações (argumentos) para o processamento da função Argumentos = lista de expressões Lista pode ser vazia Lista aparece entre parênteses após o nome da função Ex. int Soma(int x, int y) { 37
38 1.3. Funções Comando return Encerra a execução da função (procedimento) Função: valor da expressão retorna como o valor da função Procedimentos e Funções Em procedimentos return; Em funções return (expressão); Expressão não precisa estar entre parênteses 38
39 1.3. Funções Definições e protótipos de funções Funções são definidas de acordo com a seguinte sintaxe: tipo nome (lista de parâmetros) { corpo de função } 39
40 1.3. Funções Definições e protótipos de funções Tipo de resultado Quando a função é um procedimento (ou seja, não retorna nenhum valor), usa-se a palavra chave void Procedimento não retorna valor Lista de parâmetros Funcionam como variáveis locais com valores iniciais Quando função não recebe parâmetros, a lista de parâmetros é substituída pela palavra void 40
41 1.3. Funções Funcionamento de uma chamada: Cada expressão na lista de argumentos é avaliada O valor da expressão é convertido, se necessário, para o tipo de parâmetro formal Este tipo é atribuído ao parâmetro formal correspondente no início do corpo da função O corpo da função é executado 41
42 1.3. Funções Funcionamento de uma chamada: Se um comando return é executado, o controle é passado de volta para o trecho que chamou a função Se um comando return inclui uma expressão, o valor da expressão é convertido, se necessário, pelo tipo do valor que a função retorna O valor então é retornado para o trecho que chamou a função Se um comando return não inclui uma expressão nenhum valor é retornado ao trecho que chamou a função 42
43 1.3. Funções Funcionamento de uma chamada: Se não existir um comando return, o controle é passado de volta para o trecho que chamou a função após o corpo da função ser executado 43
44 1.3. Funções Passagem de informações Ocorre através da declaração de argumentos dentro da declaração Declaração de argumentos informa o número e tipo dos argumentos Conjunto de argumentos forma uma lista de declarações de variáveis separadas por vírgulas Ex.: double bolsa, double notas, int idade 44
45 Passagem de informações por valor 1.3. Funções Significa que uma nova variável será criada dentro da função e receberá o valor da variável passada como parâmetro As novas variáveis só existem dentro da função Caso não seja especificado, não poderá mais ser utilizada depois que a função foi finalizada Alterações nos valores das novas variáveis não alteram os valores da variável passada como parâmetro O mesmo vale quando usamos o return, só que agora no sentido inverso 45
46 1.3. Funções float media (float prova_1, float prova_2, float trabalho) { float final; } if (trabalho > 5){ final = 0.2*trabalho + 0.8*(prova_1+prova_2)/2 ; } else{ final = 0.1*trabalho + 0.9*(prova_1+prova_2)/2 ; } return final; void main(void) { for (i=0;i<nro_alunos;i++) { media_aluno[i]=media(p1[i],p2[i],t [i]); } } 46
47 1.3. Funções Passagem de informações por referência Permite que uma variável passada como referência possa ser manipulada dentro da função Utilização de ponteiros Em C, vetores inteiros podem ser passados como parâmetro Tamanho do vetor não precisa ser informado na declaração da função Geralmente, passa-se junto uma variável com o tamanho do vetor 47
48 1.3. Funções void norm(float *x, float *y) { } float N; N = 10.0; *x = *x / N; *y = *y / N void main(void) { float a, b, m; norm( &a, &b ); printf( Valores = %f, %f, a, b); } 48
49 1.3. Funções Se uma função recebe um vetor de uma dimensão, o parâmetro formal pode ser declarado como ponteiro ou vetor Exemplos (todos têm o mesmo efeito): func (int *x){... } func (int x[10]){... } func (int x[]){... } 49
50 1.3. Funções Protótipos Antes de usar uma função em C, é aconselhável declará-la especificando seu protótipo Tem a mesma forma que a função, só que substitui o corpo por um (;) Nomes das variáveis de um parâmetro são opcionais Fornecê-los ajuda a leitura do programa 50
51 1.3. Funções Mecanismo do processo de chamada de função 1. Valor dos argumentos é calculado pelo programa que está chamando a função 2. Sistema cria nova espaço para todas as variáveis locais da função (estrutura de pilha) 3. Valor de cada argumento é copiado na variável parâmetro correspondente na ordem em que aparecem 3.1 Realiza conversões de tipo necessárias 51
52 1.3. Funções Mecanismo do processo de chamada de função 4. Comandos do corpo da função são executados até: 4.1 Encontrar comando return 4.2 Não existirem mais comandos para serem executados 5. O valor da expressão return, se ele existe, é avaliado e retornado como valor da função 6. Pilha criada é liberada 7. Programa que chamou continua sua execução 52
53 1.3. Funções Projeto top-down Procedimentos e funções permitem dividir um programa em pedaços menores Facilita sua leitura É chamado de processo de decomposição Estratégia de programação fundamental Encontrar a decomposição certa não é fácil Requer experiência 53
54 1.3. Funções Projeto top-down Melhor estratégia para escrever programas é começar com o programa principal Pensar no programa como um todo Identificar as principais partes da tarefa completa Maiores pedaços são candidatos a funções Mesmos estas funções podem ser decompostas em funções menores Continuar até cada pedaço ser simples o suficiente para ser resolvido por si só 54
55 1.4. Estruturas Estrutura Coleção de variáveis referenciada sobre um mesmo nome Meio conveniente de manter informações relacionadas juntas Conhecida também como Registro (Pascal) ou Variável Composta Heterogênea Permite criar novos tipos de dados 55
56 1.4. Estruturas Declaração Forma uma fonte que pode ser usada para criar variáveis de estruturas struct nome_da_estrutura { tipo nome_da elemento_1; tipo nome_da elemento_2; }; 56
57 1.4. Estruturas O compilador define um novo tipo de dado a partir da definição da estrutura As variáveis da estrutura são conhecidas como elementos da estrutura ou membros da estrutura Os elementos da estrutura são logicamente relacionados entre si 57
58 1.4. Estruturas Para utilização da estrutura definida, variáveis do tipo de dado definido devem ser criadas struct nome_da_estrutura nome_da_variavel_estrutura; Isto declarará a variável estrutura nome_da_variável_estrutura do tipo nome_da_estrutura 58
59 1.4. Estruturas O compilador irá alocar automaticamente memória suficiente para acomodar todas as variáveis que compreendem a estrutura Exemplo Estruturas struct endereco { char nome[40]; char rua[50]; char cidade[20]; char estado[3]; unsigned long int cep; }; main( ){ struct endereco cliente; nome 40 bytes rua 50 bytes cidade 20 bytes estado 3 bytes cep 4 bytes cliente 117 bytes 59
60 1.4. Estruturas As variáveis podem ser declaradas logo depois da estrutura struct nome_da_estrutura { tipo nome_do_elemento_1; tipo nome_do_elemento_2; } nome_das_variaveis_estrutura; 60
61 1.4. Estruturas Referência As variáveis de uma estrutura são selecionadas através do operador ponto nome_da_estrutura.nome_do_elemento; 61
62 1.4. Estruturas Exemplo Estruturas struct endereco { char nome[40]; char rua[50]; char cidade[20]; char estado[3]; unsigned long int cep; }; main( ){ struct endereco cliente; strcpy(cliente.cidade, "Sao Paulo"); cliente.cep = ; 62
63 1.4. Estruturas Exemplo Estruturas struct endereco { char nome[40]; char rua[50]; char cidade[20]; char estado[3]; unsigned long int cep; }; main( ){ struct endereco cliente; gets(cliente.cidade); printf( Cidade: %s \n,cliente.cidade); 63
64 1.4. Estruturas Vetores e matrizes podem ser declarados como sendo do tipo de uma estrutura nome_da_estrutura nome_da_variavel_estrutura[tamanho]; Exemplo : struct endereco { ; }; main( ){ struct endereco cliente[25]; gets(cliente[i].nome); 64
65 1.4. Estruturas Ponteiros para estruturas Da mesma maneira que para qualquer outro tipo de variável, C permite ponteiros para estruturas Declaração: struct nome_da_estrutura *nome_da_variavel_estrutura; Quando ponteiro é utilizado para referenciar uma variável do tipo estrutura, o operador seta (->) deve ser utilizado para referenciar um de seus membros 65
66 1.4. Estruturas Ponteiros para estruturas Exemplo: struct saldo { float valor; char nome[100]; }; main( ){ struct saldo *p, cliente; p = &cliente; p->valor = ; 66
67 1.4. Estruturas Typedef Permite definir novos nomes de tipos de dados Forma geral typedef tipo nome; Exemplos: typedef float flutuante; main ( ) { flutuante a; } typedef struct cliente_tipo { } cliente; main ( ) { cliente clist[n]; } 67
68 Exercícios Exercício 1.1. Escreva um programa em C em que 1. o usuário possa entrar com o tamanho de um vetor e com seus elementos 2. tenha uma função que imprima os valores e os índices do maior elemento do vetor 3. tenha uma função que imprima os valores e os índices do menor elemento do vetor 68
69 Exercícios Exercício 1.2. Escreva um programa em C em que o usuário possa entrar com os elementos de um vetor e que ordene de forma crescente os seus elementos. Imprima o novo vetor. 69
70 Exercício 1.3. Escrever um programa C que 1. Possua uma estrutura chamada aluno com os seguintes elementos i. Nome (string) ii. Numero USP (long int) iii. Média Final (float) Exercícios 2. Tenha um menu que permita realizar as seguintes operações i. Entrar com dados dos aluno ii. Mostrar dados do aluno iii. Mostrar os dados de todos alunos ordenados de acordo com o valor das médias finais iv. Sair Observações: Procurar dados do aluno através de seu número USP Entrar com os dados de 5 alunos para teste 70
71 1.5. Alocação Dinâmica Permite a criação dinâmica de variáveis e vetores durante a execução do programa Se alocação dinâmica não é utilizada, o programador deve saber de antemão a quantidade de espaço necessária para cada variável ou vetor Em C, Variáveis globais são armazenadas em área de armazenamento de tamanho fixo Variáveis locais são armazenadas em uma pilha 71
72 Utilização da memória em C 1.5. Alocação Dinâmica Alta Pilha Espaço para Alocação Dinâmica Variáveis Globais Baixa Programa 72
73 1.5. Alocação Dinâmica Em C, podem ser usadas malloc( ) Aloca memória void *malloc(unsigned numero_bytes) free( ) Como o ponteiro é do tipo void, pode ser atribuído qualquer tipo de dado Desaloca memória 73
74 #include <stdlib> // Alocacao dinamica de vetor de inteiros int *aloc_vetor(int linhas){ int *vetor; 1.2. Ponteiros vetor = (int *)malloc(linhas*sizeof(int)); if (!vetor) { printf("erro de alocacao de vetor de inteiros!\n"); exit(1); } return vetor; } void main(void){ int tam, *v; v = aloc_vetor(tam); free(v); // desalocacao 74
75 #include <stdlib> // Alocacao dinamica de matriz de floats float **aloc_matriz(int linhas, int colunas){ int i; float **Matriz; Matriz = (float **)malloc(linhas*sizeof(float)); for (i=0;i<linhas;i++) { Matriz[i] = (float *)malloc(colunas*sizeof(float)); } if (!Matriz) { printf("erro de alocacao da matriz ( %d x %d )!", linhas, colunas); exit(1); } return Matriz; } // continuacao no proximo slide 75
76 // continuacao // Desalocacao dinamica de matriz de floats void desaloc_matriz(float **Matriz, int linhas) { int i; } for(i=0;i<linhas;i++) { free(matriz[i]); } void main(void){ int lin, col; float **M; M = aloc_matriz(lin, col); desaloc_matrizf(m, lin); 76
3. Linguagem de Programação C
Introdução à Computação I IBM1006 3. Linguagem de Programação C Prof. Renato Tinós Departamento de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3.5. Vetores 3.5.1. Vetores 3.5.2. Strings 3.5.3.
Leia mais3. Linguagem de Programação C
Introdução à Computação I IBM1006 3. Linguagem de Programação C Prof. Renato Tinós Departamento de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3.7. Funções 3.7.1. Introdução 3.7.2. Uso de
Leia mais3. Linguagem de Programação C
Introdução à Computação I IBM1006 3. Linguagem de Programação C Prof. Renato Tinós Departamento de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3.6. Ponteiros 3.6.1. Introdução 3.6.2. Uso
Leia maisFUNÇÕES EM C Material adaptado da profa Silvana Maria Affonso de Lara
Universidade do Estado de Minas Gerais - UEMG Curso de Engenharia da Computação FUNÇÕES EM C 1 Material adaptado da profa Silvana Maria Affonso de Lara ROTEIRO DA AULA Definição de Função Argumentos, retornos
Leia mais3. Linguagem de Programação C
Introdução à Computação I IBM1006 3. Linguagem de Programação C Prof. Renato Tinós Departamento de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3.8. Estruturas 3.8.1. Introdução 3.8.2. Uso
Leia maisIntrodução à Computação
Introdução à Computação Linguagem C Aula de hoje Introdução Vetores (revisão) Relacionamento entre vetores e ponteiros Professor: André de Carvalho Definição: coleção de valores de dados individuais com
Leia maisEstruturas 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 maisEstruturas de Dados. Profa. Juliana Pinheiro Campos
Estruturas de Dados Profa. Juliana Pinheiro Campos Vetores Forma mais simples de estruturar um conjunto de dados. Exemplo: int p[10]; // vetor de inteiros com 10 elementos Reserva de um espaço de memória
Leia maisPonteiros em C. Adriano Joaquim de Oliveira Cruz 21 de julho de Instituto de Matemática Departamento de Ciência da Computação UFRJ
Ponteiros em C Adriano Joaquim de Oliveira Cruz 21 de julho de 2017 Instituto de Matemática Departamento de Ciência da Computação UFRJ 1 Resumo da Seção Introdução Declaração Incrementando e Decrementando
Leia maisUniversidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação. Material preparado pela profa Silvana Maria Affonso de Lara
Universidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação FUNÇÕES EM C 1 Material preparado pela profa Silvana Maria Affonso de Lara 2º semestre de 2010 ROTEIRO DA AULA Definição
Leia maisIntroduçã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 mais3. Linguagem de Programação C
Introdução à Computação I IBM1006 3. Linguagem de Programação C Prof. Renato Tinós Departamento de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3.2. Estrutura de Programas e Representação
Leia maisIntrodução à Linguagem C
Introdução à Linguagem C Eduardo Simões de Albuquerque Instituto de Informática UFG 13/03/2006 1 História Inventada e desenvolvida por Dennis Ritchie em um DEC- PDP 11 Originária de: BCPL desenvolvida
Leia maisIntroduçã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 maisComputação 2. Aula 7. Profª. Fabiany Ponteiros
Computação 2 Aula 7 Ponteiros Profª. Fabiany fabianyl@utfpr.edu.br O que são Ponteiros? Um ponteiro é uma variável que contém um endereço de memória. Este endereço é normalmente a posição de uma outra
Leia maisAlocaçã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 maisUniversidade Federal de Uberlândia Faculdade de Computação. Linguagem C: ponteiros e alocação dinâmica
Universidade Federal de Uberlândia Faculdade de Computação Linguagem C: ponteiros e alocação dinâmica Prof. Renato Pimentel 1 Ponteiros 2 Prof. Renato Pimentel 1 Ponteiros: introdução Toda a informação
Leia maisProgramação II. Vetores e Alocação Dinâmica. Bruno Feijó Dept. de Informática, PUC-Rio
Programação II Vetores e Alocação Dinâmica Bruno Feijó Dept. de Informática, PUC-Rio Vetores (arrays) Vetor: estrutura de dados definindo um conjunto enumerável Exemplo: v = vetor de inteiros com 10 elementos
Leia maisProgramação I Matrizes e Strings. Prof. Carlos Alberto
Programação I Matrizes e Strings Prof. Carlos Alberto carlos.batista@facape.br carlos36_batista@yahoo.com.br Matrizes Matriz é uma coleção de variáveis do mesmo tipo que é referenciada por um nome comum;
Leia maisEstruturas da linguagem C. 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões.
1 Estruturas da linguagem C 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões. Identificadores Os identificadores seguem a duas regras: 1. Devem ser começados por letras
Leia maisIntrodução à Ciência da Computação. Sumário. Estruturas de Dados. Agradecimentos. Arranjos: Vetores, Strings & Matrizes em C
Agradecimentos Introdução à Ciência da Computação Arranjos: Vetores, Strings & Matrizes em C Parte dos slides a seguir são adaptações dos originais gentilmente cedidos por: Prof. Rudinei Goularte Prof.
Leia maisPonteiros. Introdução e Alocação Dinâmica
Ponteiros Introdução e Alocação Dinâmica Conceito Um PONTEIRO ou APONTADOR é uma variável usada para armazenar um endereço de memória. Normalmente, o endereço armazenado em um PONTEIRO é a posição de uma
Leia maisFunções em Linguagem C Parte II
Slides inicialmente preparados pelo Prof. Dr. Claudio Fabiano Motta Toledo Funções em Linguagem C Parte II Profa. Dra. Elisa Yumi Nakagawa 1. Semestre 2017 Sumário Introdução a Ponteiros Escopo de Variáveis
Leia maisAula 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 maisExercí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 maisAula 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 maisPonteiros. Introdução
Ponteiros Introdução Conceito Um PONTEIRO ou APONTADOR é uma variável usada para armazenar um endereço de memória. Normalmente, o endereço armazenado em um PONTEIRO é a posição de uma outra variável na
Leia maisProgramação: Vetores
Programação de Computadores I Aula 09 Programação: Vetores José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2011-1 1/62 Motivação Problema Faça um programa que leia
Leia maisIntrodução à Linguagem C
Engenharia de CONTROLE e AUTOMAÇÃO Introdução à Linguagem C Aula 03 DPEE 1038 Estrutura de Dados para Automação Curso de Engenharia de Controle e Automação Universidade Federal de Santa Maria beltrame@mail.ufsm.br
Leia maisEstrutura de dados 2. Ponteiro. Prof. Jesuliana N. Ulysses
1 3 Estrutura de dados 2 Ponteiro Ponteiro 2 O ponteiro é um tipo de dado como int, char ou float. A diferença do ponteiro ponteiro guardará um endereço de memória. Por meio deste endereço pode-se acessar
Leia maisEstruturas 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 maisIntrodução a Programação de Jogos
Introdução a Programação de Jogos Aula 03 Introdução a Linguagem C Edirlei Soares de Lima Estrutura de um Programa C Inclusão de bibliotecas auxiliares: #include Definição
Leia maisExercí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 maisProgramação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO
Programação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO Introdução Criada em 1972, por Dennis Ritchie; Centro de Pesquisas da Bell Laboratories; Para utilização no S.O. UNIX; C é uma linguagem
Leia maisPonteiros - 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 maisComputadores Digitais 2. Prof. Rodrigo de Souza Couto
Computadores Digitais 2 Linguagens de Programação DEL-Poli/UFRJ Prof. Miguel Campista Aula de Hoje Vetores e alocação dinâmica Vetores Alocação dinâmica Vetores locais e funções ATENÇÃO Esta apresentação
Leia maisDAS5102 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 maisPonteiros 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 maisAlgoritmos e Programação
Algoritmos e Programação Aula 3 Introdução a Linguagem C Profa. Marina Gomes marinagomes@unipampa.edu.br 1 Aula de Hoje - Criar programas simples em C utilizando a estrutura básica; - Declarar variáveis;
Leia maisLinguagem C Funções. André Tavares da Silva.
Linguagem C Funções André Tavares da Silva andre.silva@udesc.br Funções É uma coleção de comandos identificados por um nome (identificador); As funções executam ações e podem retornar valores; main, printf
Leia maisALGORITMOS E ESRUTRA DE DADOS I. Ponteiros Passagem por Valor e Referência Alocação de Memória
ALGORITMOS E ESRUTRA DE DADOS I Ponteiros Passagem por Valor e Referência Alocação de Memória 2 Agenda Ponteiros Conceitos gerais O que é Ponteiro? Declaração de Ponteiros Operadores para Ponteiros Exemplos
Leia maisMétodos Computacionais. Funções, Escopo de Variáveis e Ponteiros
Métodos Computacionais Funções, Escopo de Variáveis e Ponteiros Tópicos da Aula Hoje vamos detalhar funções em C Escrevendo funções Comando return Passagem de argumentos por valor Execução de uma função
Leia maisCentro Universitário Franciscano Curso de Sistemas de Informação Disciplina de algoritmos e programação II. Ponteiros
Centro Universitário Franciscano Curso de Sistemas de Informação Disciplina de algoritmos e programação II Ponteiros Profa.: Simone Ceolin Slides (Prof.Tiago Rios da Rocha) Primeiro Semestre 2011 Sumário
Leia maisSumário. Introdução à Ciência da Computação. Ponteiros em C. Introdução. Definição. Por quê ponteiros são importantes?
Introdução à Ciência da Computação Ponteiros em C 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
Leia maisMétodos Computacionais. Vetores e Matrizes Dinâmicas
Métodos Computacionais Vetores e Matrizes Dinâmicas Vetores Um programa para o cálculo da média Média m n i= = 1 n x i Variância v n i= = 1 ( x i n m) 2 A forma mais simples de estruturar um conjunto de
Leia maisLinguagem C: Introdução
Linguagem C: Introdução Linguagem C É uma Linguagem de programação genérica que é utilizada para a criação de programas diversos como: Processadores de texto Planilhas eletrônicas Sistemas operacionais
Leia maisPonteiro. 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 maisMódulo 5 Vetores e Alocação Dinâmica
Estruturas de Dados Módulo 5 Vetores e Alocação Dinâmica 1/9/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora
Leia maisProgramação II. Vetores e Alocação Dinâmica. Bruno Feijó Dept. de Informática, PUC-Rio
Programação II Vetores e Alocação Dinâmica Bruno Feijó Dept. de Informática, PUC-Rio Vetores (arrays) Vetor: estrutura de dados definindo um conjunto enumerável Exemplo: v = vetor de inteiros com 10 elementos
Leia maisINF 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 maisPrincí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 maisLinguagem C: Ponteiros. Prof. Tiago Alves de Oliveira
Linguagem C: Ponteiros 1 Sumário Ponteiros; Variáveis ponteiros; Operadores de ponteiros; Expressões com ponteiros; Atribuição de ponteiros; Aritmética de ponteiros; Comparação de ponteiros; Ponteiros
Leia maisEstrutura de Dados. Cadeia de Caracteres. Roberto Araujo Ago/2013
Estrutura de Dados Cadeia de Caracteres Roberto Araujo Ago/2013 Estrutura de Dados O que é uma estrutura de dados? É um arranjo pré-definido de um ou mais pedaços de dados Ex: Ex: Os carateres 'u', 'v',
Leia maisProgramação I Ponteiros e alocação dinâmica de memória. Prof. Carlos Alberto
Programação I Ponteiros e alocação dinâmica de memória Prof. Carlos Alberto carlos.batista@facape.br carlos36_batista@yahoo.com.br Ponteiros O ponteiro é um tipo de dado como int, char ou float; Variáveis
Leia maisPonteiros. 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 maisPonteiros 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 maisAula 06 Introdução à Programação Matrizes
Aula 06 Introdução à Programação Matrizes Prof. Gustavo Callou gustavo.callou@ufrpe.br gcallou@gmail.com Roteiro Matrizes Unidimensionais (Vetor) Bidimensionais String Exercícios Gustavo Callou DEINFO/UFRPE
Leia maisLinguagem C: Ponteiros. Prof. Leonardo Barreto Campos 1
Linguagem C: Ponteiros Prof. Leonardo Barreto Campos 1 Sumário Ponteiros; Variáveis ponteiros; Operadores de ponteiros; Expressões com ponteiros; Atribuição de ponteiros; Aritmética de ponteiros; Comparação
Leia maisCaracteres e Cadeias de Caracteres
Caracteres e Cadeias de Caracteres INF1005 Programação I Prof. Hélio Lopes lopes@inf.puc-rio.br sala 408 RDC 1 caracteres e cadeias de caracteres tópicos caracteres cadeias de caracteres (strings) vetor
Leia maisTipos Abstratos de Dados. Estrutura de Dados
Tipos Abstratos de Dados Tipo Abstrato de Dados ou TAD Idéia principal: desvincular o tipo de dado (valores e operações) de sua implementação: O que o tipo faz e não como ele faz! Vantagens da desvinculação:
Leia maisPonteiros de Variáveis
Ponteiros de Variáveis C++ permite o armazenamento e a manipulação de valores de endereços de memória. Para cada tipo existente, há um tipo ponteirocapaz de armazenar endereços de memória em que existem
Leia maisProgramaçã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 maisIntrodução à Ciência da Computação scc-120
ICMC USP 1.semestre/2011 Introdução à Ciência da Computação scc-120 Aula : Variáveis em C Profa. Roseli Romero mailto: rafrance@icmc.sc.usp.br Slides cedidos pela profa. Renata Fortes Variáveis variáveis
Leia maisReinaldo 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 maisEstruturas de Dados Aulas 3 e 4: Uso da. 14/03/2011 e 16/03/2011
Estruturas de Dados Aulas 3 e 4: Uso da memória e Vetores 14/03/2011 e 16/03/2011 Uso da memória Existem 3 maneiras de reservar o espaço da memória: Variáveis globais (estáticas) Espaço existe enquanto
Leia maisProgramação Estruturada
Programação Estruturada Introdução à linguagem C Professores Emílio Francesquini e Carla Negri Lintzmayer 2018.Q3 Centro de Matemática, Computação e Cognição Universidade Federal do ABC Programação estruturada
Leia maisREVISÃO DE C. Vanessa Braganholo Estruturas de Dados e Seus Algoritmos
REVISÃO DE C Vanessa Braganholo Estruturas de Dados e Seus Algoritmos REVISÃO DE C Ponteiros Alocação dinâmica de memória Recursão INSTITUTO DE COMPUTAÇÃO - UFF 2 PONTEIROS PONTEIROS C permite o armazenamento
Leia maisAula 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 maisProgramaçã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 maisAlgoritmos 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 maisprim = A ; prim = &A[0];
57 12 - MAIS SOBRE APONTADOR 12.1 - Ponteiros e arrays Em C, ponteiros e matrizes são tratados de maneira semelhante. 12.1.1 - Nome O nome é um ponteiro, ou seja, aponta (contém o endereço) para o primeiro
Leia maisINF 1620 P1-16/09/06 Questão 1 Nome:
INF 1620 P1-16/09/06 Questão 1 Considerando a fórmula para o cálculo da distância entre dois pontos (x 1, y 1 ) e (x 2, y 2 ) apresentada a seguir: d = (x 2 " x 1 ) 2 + (y 2 " y 1 ) 2 (a) Escreva uma função
Leia mais3. Linguagem de Programação C
Introdução à Computação I IBM1006 3. Linguagem de Programação C Prof. Renato Tinós Departamento de Computação e Matemática (FFCLRP/USP) 1 3.3. Conceitos Básicos de C: Expressões, Operadores e Bibliotecas
Leia mais6 Alguns conceitos e comandos em programação
6 Alguns conceitos e comandos em programação 6.1 Diretivas Diretivas são instruções que permitem ao programador efetuar algum tipo de modificação à compilação, sendo analisadas e executadas pelo pré-compilador,
Leia maisAula 8 - Matrizes e Strings
Programação I Aula 8 - e Prof. Laura Silva de Assis Engenharia da Computação 2 o Período CEFET/RJ - Centro Federal de Educação Tecnológica Celso Suckow da Fonseca UnED Petrópolis 2n o semestre - 2015 1
Leia maisIntrodução à Computação MAC0110
Introdução à Computação MAC0110 Prof. Dr. Paulo Miranda IME-USP Aula 2 Variáveis e Atribuições Memória Principal: Introdução Vimos que a CPU usa a memória principal para guardar as informações que estão
Leia maisIntroduçã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 maisMatrizes em C. Lucas Ferrari de Oliveira Professor Adjunto. Universidade Federal do Paraná
em C Lucas Ferrari de Oliveira Professor Adjunto Universidade Federal do Paraná Uma matriz é uma coleção de variáveis do mesmo tipo que é referenciada por um nome comum; Em C todas as matrizes consistem
Leia maisEssencialmente, um ponteiro nada mais é do que uma variável que ao invés de conter um valor, contém um endereço de memória.
Ponteiros e Arrays Ponteiros são fundamentais para a programação bem sucedida em C: Passagem de parâmetros por referência; Alocação dinâmica de memória; Aumentar a eficiência de certar rotinas. Essencialmente,
Leia maisLinguagem C Princípios Básicos (parte 1)
Linguagem C Princípios Básicos (parte 1) Objetivos O principal objetivo deste artigo é explicar alguns conceitos fundamentais de programação em C. No final será implementado um programa envolvendo todos
Leia maisSSC304 Introdução à Programação Para Engenharias. Ponteiros. 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 s GE4 Bio GE4Bio Grupo de Estudos em Sinais Biológicos Prof.Dr.
Leia maisC++ - Matrizes. Observ.: C++ não avisa quando o limite de uma matriz foi excedido. Providenciar a verificação é responsabilidade do programador.
C++ - Matrizes É um conjunto de variáveis, do mesmo tipo, referenciadas por um único nome, onde cada variável é diferenciada por meio de um número entre colchetes chamado índice. Declaração : tipo nome
Leia maisMétodos Computacionais
Métodos Computacionais Objetivos da Disciplina e Introdução a Linguagem C Construções Básicas Objetivos da Disciplina Objetivo Geral Discutir técnicas de programação e estruturação de dados para o desenvolvimento
Leia maisPonteiros 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 maisPonteiros 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 maisIntrodução à Programação
Introdução à Programação Introdução a Linguagem C Construções Básicas Programa em C #include int main ( ) { Palavras Reservadas } float celsius ; float farenheit ; celsius = 30; farenheit = 9.0/5
Leia maisLinguagem C ponteiros
Linguagem C ponteiros IF61A/IF71A - Computação 1 Prof. Leonelo Almeida Universidade Tecnológica Federal do Paraná Até agora... Introdução à linguagem C... Vetores Matrizes Funções Recursão Registros Aula
Leia maisUniversidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação. Estruturas em C
Universidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação Estruturas em C 1 Material preparado pela profa Silvana Maria Affonso de Lara 2º semestre de 2010 ROTEIRO DA AULA
Leia maisCURSO BÁSICO DE PROGRAMAÇÃO AULA 15. Revisão Vetores e Matrizes Trabalho
CURSO BÁSICO DE PROGRAMAÇÃO AULA 15 Revisão Vetores e Matrizes Trabalho Definição: Introdução a Linguagem C Vetores Estrutura que permite armazenar um conjunto de dados do mesmo tipo na mesma variável;
Leia maisLinguagem 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 maisESTRUTURA DE DADOS (TCC )
ESTRUTURA DE DADOS (TCC-00.319) Ponteiros e funções Cristina Boeres 2 Ponteiros Variável do tipo ponteiro:! Linguagens como C permite o armazenamento e a manipulação de valores de endereços de memória!
Leia maisComputadores Digitais 2. Prof. Rodrigo de Souza Couto
Computadores Digitais 2 Linguagens de Programação DEL-Poli/UFRJ Prof. Miguel Campista Aula de Hoje Tipos Estruturados Tipo estrutura Definição de novos tipos Aninhamento de Estruturas Vetores de estruturas
Leia maisINF 1620 P4-01/07/08 Questão 1 Nome:
INF 1620 P4-01/07/08 Questão 1 Escreva uma função em C que receba duas strings, cujos caracteres estão ordenados em ordem crescente, e retorne uma nova string alocada dinamicamente, que contém todos os
Leia maisIntroduçã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 maisEstrutura 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 maisPonteiros 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