[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: duvidas, duvidas, duvidas



Paulo Eduardo A. Silveira writes:
 > Hi Jay..
 > Eh isso ai, voce entendeu, eh soh um charminho...
 > A vantagem do ponteiro eh que voce pode alocar a memoria a hora que
 > quiser, porem alem de mais lento, 

De fato, chamadas de alocacao como malloc sao lentas pois sao chamadas ao
sistema operacional, durante a execucao do programa.  Em geral, o que se faz
para evitar chamadas frequentes, é alocar memoria em blocos maiores.  

 > ele utiliza da RAM do computador, jah a
 > matriz/vetor usa a memoria convencional (logo eh bem limitada), eh mais
 > rapida mas o tamanho voce defini no inicio e nao pode altera-lo, e se voce
 > usar menos que o usado, nao vai adiantar, o que voce declarou vai ser
 > gasto de qualquer forma...

Alocacao dinamica de memoria é uma grande sacada.  Sem isto, nao seria
possivel voce fazer um programa que manipulasse uma quantidade grande de
dados.  Mais ainda, ter varios processos rodando, cada uma delas podendo
potencialmente gastar bastante memoria.  

Yoshi

 > Acho que eh isso
 > FaloWWW
 > 
 >  -------------------------------------
 >  Paulo Eduardo A. Silveira  
 >  Undergraduating in Computer Science
 >  University of Sao Paulo - IME
 >  http://www.linux.ime.usp.br/~peas
 >  -------------------------------------
 > On Sat, 19 Sep 1998, Jay Clei Garcia dos Santos wrote:
 > 
 > > 
 > > -----Mensagem original-----
 > > De: Alexandre Freire <alex@linux.ime.usp.br>
 > > Para: Jay Clei Garcia dos Santos <jaysantos@originet.com.br>
 > > Cc: Lista de discussao - MAC-122 <yoshi-mac122@ime.usp.br>
 > > Data: Sábado, 19 de Setembro de 1998 04:10
 > > Assunto: Re: duvidas, duvidas, duvidas
 > > 
 > > >> O que significa o comando main (argc, argv)? (que esta no arq.
 > > ex11_modif.c)?
 > > >>
 > > > o main declara a funcao principal do programa, o argc e o argv sao os
 > > >argumentos da funcao, e por isso que vc pode executar o programa da linha
 > > >de comando...
 > > >Ex:
 > > >ep1.exe argumento argumento2
 > > >o argc teria valor 3 (e o numero de argumentos que o usuario entrou) e o
 > > >argv seri um vetor de strings
 > > >argv[1] = ep1.exe
 > > >argv[2] = argumento
 > > >argv[3] = argumento2
 > > >
 > > >ok?
 > > Entendi, mas qual seria a utilidade dele no programa? Seria para voce poder
 > > entrar com o nome do arquivo.txt contendo as propriedades das tarefas
 > > diretamente na chamada do programa? por exemplo:
 > > 
 > > TEXTO.TXT
 > > 3
 > > 1 2
 > > 2 3
 > > 
 > > e na chamada:
 > > 
 > > ep2.exe texto.txt
 > > 
 > > E isso?
 > > 
 > > Mais uma coisinha... Por que, algumas vezes, é mais vantajoso acessar
 > > informacoes via ponteiro do que diretamente, ja que se eu alterar o
 > > ponteiro, estarei alterando essas informacoes tambem?
 > > 
 > > Desculpe mas e que estou dando meus primeiros passos em C :-)
 > > >
 > > >@lex
 > > > Alexandre Freire      <alex@linux.ime.usp.br>