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

Re: Alocaçãodinâmica...



Olá novamente,

Desculpem o offtopic e a besteira que escrevi. Logo após enviar o email, 
descobri que ainda estava tudo errado. A resolução correta é

float ** gera_matriz(int i, int j)
{ 
	int contador;
	int **matriz;

	if(!(matriz = malloc(sizeof(float *) * i)))
	...
	return(matriz);
}

Obrigado a todos e desculpem (novamente) o ocorrido.

Em Ter 24 Abr 2001 21:21, Raphael "DephiNit" Pereira escreveu:
> Olá!
>
> Consegui descobrir o erro e consertá-lo
>
> Em Terça 24 Abril 2001 17:39, Raphael "DephiNit" Pereira escreveu:
> > void gera_matriz(float **matriz, int i, int j)
> > {
> >         int contador;
> >
> >         /* Primeiro eu crio um bloco com `i' ponteiros */
>
> No lugar de:
> >         if (!(*matriz = (float *) malloc((i * (sizeof(float *))))))
>
> eu coloquei:
>
> 	if (!(matriz = (float **) malloc((sizeof(float *) * i))))
>
> O resto estava correto!!!
>
> >         {
> >                 printf("Não há memória suficiente");
> >                 exit(-1);
> >         }
> >
> >         /* Agora crio `i' blocos com `j' floats */
> >         for (contador = 0; contador < i; contador++)
> >         {
> >                 if (!(matriz[contador] = (float *) malloc((j *
> > (sizeof(float))))))
> >                 {
> >                         printf("Não há memória suficiente");
> >                         exit(-1);
> >                 }
> >         }
> > }

-- 
Raphael "DephiNit" Pereira
        -=-*-=-*-=-
  dephinit@softhome.net
        -=-*-=-*-=-



Reply to: