[Prévia cron] [Próxima Cron] [Prévia por assunto] [Próxima por assunto]
[Índice cronológico] [Índice de assunto] [Índice de autor]

Re: ep2-struct inicializacao



> typedef struct{
>   px[8][5];
>   py[8][5];
> }puz;
>
> puz Peca[12];
>
> Peca[0].px = {            /*O erro aparece aqui!!!*/
>   {0,1,2,3,4},
>   {0,0,0,0,0}
> };
>
> O que estou fazendo de errado???

    Você está misturando inicialização com atribuição! Das duas, uma: ou
inicialize tudo de uma vez ou atribua depois. Só que a inicialização fica
com uma cara horrível, abaixo eu só inicializei os dois primeiros px e os
dois primeiros py da Peca[0], por exemplo:

puz Peca[12] =

{ { {0,1,2,3,4}, {0,0,0,0,0} },
  { {5,6,7,8,9}, {0,0,0,0,0} } }
};

/* ou */

puz Peca[12];

main() {
   Peca[0].px[0][0] = 0;
   Peca[0].px[0][1] = 1;
   Peca[0].px[0][2] = 2;
    ...
}

    Obs.: inicializações incompletas, como neste caso, podem ser úteis
porque o compilador preenche todo o resto com bitwise zero (garantido pela
linguagem).

Rubens