Avatar billede emileej Nybegynder
23. november 2000 - 14:05 Der er 2 kommentarer og
1 løsning

Hvorfor virker det ikke?

PWTGroup LoadGrpFromFile(char *FileName){
PWTGroup Result;
void *Buff;
FILE *GrpFile;
GrpFile=fopen(\"Level1.wssc\",\"rb\");
Buff=malloc(_filelength(_fileno( GrpFile )));
fread( Buff,sizeof(Buff),1,GrpFile);
fclose(GrpFile);
Result=(PWTGroup)Result;
return Result;
}

E-/mil
Avatar billede soepro Nybegynder
23. november 2000 - 15:24 #1
Hvilken part af det er det der ikke virker ??? en sidste cast skal vel være fra void* Buff til Result og ikke Result til Result, sådan som du har skrevet:

PWTGroup LoadGrpFromFile(char *FileName)
{
  PWTGroup Result;
  void *Buff;
  FILE *GrpFile;
  GrpFile=fopen(\"Level1.wssc\",\"rb\");
  Buff=malloc(_filelength(_fileno( GrpFile )));
  fread( Buff,sizeof(Buff),1,GrpFile);
  fclose(GrpFile);
  Result=(PWTGroup)Buff;
  return Result;
}

Burde du ikke i stedet overføre PWTGroup\'en som parameter, sådan at du ikke behøver at allokere hommelse til den (som du jo ikke kan frigive):

bool LoadGrpFromFile(PWTGroup& Result, char *FileName)
{
  FILE *GrpFile;
  if ((GrpFile=fopen(\"Level1.wssc\",\"rb\")) != NULL)
  {
    fread( Result, sizeof(Result),1,GrpFile);
    fclose(GrpFile);
    return true;
  };
   
  return false;
}

Men denne model får du også mulighed for at checke om det gik godt eller ej.
Avatar billede soepro Nybegynder
23. november 2000 - 15:25 #2
Det skulle selvfølgelig have været et svar !
Avatar billede emileej Nybegynder
24. november 2000 - 11:55 #3
Har fået svar fra andetsteds... zorry!

E-/mil
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester