Este artigo é o terceiro artigo da série introdução à linguagem C. Aqui serão abordados assuntos como: declaração de vetores, declaração de ponteiros, inicialização de vetores, utilização de vetores e ponteiros.
Ponteiros e vetores são coisas tão unidas que qualquer operação que possa
ser usado vetores, os ponteiros podem ser usados com melhor desempenho que
os vetores!
Um ponteiro é uma indicação de um lugar na memória do micro e um vetor é
um agrupamento de objetos na memória. Então:
int *x, y[5];
x=y; //poderia ser x=&y[0]
As linhas acima, são perfeitamente validas! X, que é um ponteiro, passará
a apontar o primeiro elemento de y! Agora, vamos a aritmética! Sendo y um
agrupamento seqüencial o que acontecerá se fizermos o incremento de x?
Isso, mesmo! Ao incrementarmos o x(não o seu conteúdo), estaremos acessando
os elementos seguintes de y.
Logo:
#include <stdio.h>
void main(void)
{
int *x, y[5], z;
for (z=0; z<5; z++) y[z]=z+1;
x=y;
for (z=0;z<5;z++) printf("%d ° vale %d !\n", z+1, *(x+z));
}
Pra quem não percebeu, a ultima linha do programa que contem dentro do
laço um printf possui uma aritmética com ponteiros, pois incrementamos as
posições de memória conforme vamos escrevendo na tela.
[1] Comentário enviado por Henryynogui em 03/04/2004 - 09:17h
-->*/Construa a solução que preencha um vetor com código do funcionário,em outro vetor com o salário e o terceiro resultante do aumento de 15 % para os salários entre 500,00 e 1200,00. Ao final,exiba um vetor com código do funcionário e seus respectivos salários e um vetor com aumento em ordem crescente com funcionário correspondente. /*
[2] Comentário enviado por Henryynogui em 03/04/2004 - 09:18h
Dá uma forcinha por favor com esse programa em c.
-->*/Construa a solução que preencha um vetor com código do funcionário,em outro vetor com o salário e o terceiro resultante do aumento de 15 % para os salários entre 500,00 e 1200,00. Ao final,exiba um vetor com código do funcionário e seus respectivos salários e um vetor com aumento em ordem crescente com funcionário correspondente. /*
[3] Comentário enviado por Henryynogui em 03/04/2004 - 09:19h
-->*/Construa a solução que preencha um vetor com código do funcionário,em outro vetor com o salário e o terceiro resultante do aumento de 15 % para os salários entre 500,00 e 1200,00. Ao final,exiba um vetor com código do funcionário e seus respectivos salários e um vetor com aumento em ordem crescente com funcionário correspondente. /*
[6] Comentário enviado por jllucca em 03/09/2004 - 19:33h
HunZ, eles tanto facilitam a programação como facilitam. Num unico ponteiro podemos ter um endereço que nesse novo endereço podera ter um outro endereço e, assim, sucessivamente...
Ponteiros são a unica forma de implementar a "Alocação dinamica" que é ir utilizado a memoria a medida que tu vai precisando dela. Por exemplo, tu cria um ponteiro lista e um aux. Ai para fazer a lista dinamica, tu reserva espaço para aux e faz ele apontar para a lista e depois a lista recebe o aux. Isso parece meio complicado, mas c voce usar uma estrutura e conseguir visualizar o que ocorre não terá duvidas do "poder" do ponteiro. Poder tanto construtivos como destrutivos, pq tu pode passar horas procurando um erro que é um ponteiro que retornou NULL e não foi checado hehehe
[9] Comentário enviado por Ti_j@der em 19/12/2004 - 21:21h
Por favor preciso de uma ajuda eu usava o Red Hat na faculdade e compilava normal agora to testando o Kurumim e naum consigo compilar os meus programas, o q pode ser ? vc sabe qula compilador ideal p o Kurumin???
[10] Comentário enviado por jllucca em 19/12/2004 - 21:50h
Oi,
eu nunca mexi com o kurumin então vou passar dois links. O primeiro é um forum da comunidade kurumin e o segundo um post de outro forum de um cara que tava com problemas pra compilar programas.