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

Re: Muitas perguntas, mais algumas...!



Paulo Eduardo A. Silveira writes:
 > Professor, na passagem abaixo (e em todas as outras que utilizam de el (k) ),
 > eu poderia substituir el (k) por &els[k-1] ou o programa iria dar pau?

Sim!  O C, quando avalia expressoes do tipo a[b], ele simplesmente calcula
*(a+b).  Desta forma, &els[k-1] é equivalente a &(*(els+k-1)).  Que é o
endereco els+k-1!  Veja seção 5.3 do Kernighan e Ritchie para mais detalhes. 

Yoshi

 > Pois el (k) nada mais eh que o endereco do k-esimo elemento da estrutura
 > encadeada els, ou eu nao posso tratar els como um vetor de estruturas?
 > Paulo
 >  
 > >     int k;
 > >     comeco = fim = NULL;
 > >     for (k = 1; k <= n; k++)
 > >       if (el (k)->g_entr == 0)
 > > 	if (comeco == NULL)
 > > 	  fim = comeco = el (k);
 > > 	else
 > > 	  {
 > > 	    fim->prox_fila = el (k);
 > > 	    fim = el (k);
 > > 	  }