08. februar 2006 - 18:53Der er
6 kommentarer og 1 løsning
fejl: glibc detected double free or corruption (out)
Jeg har et problem med følgende kode:
int administrativMedarbejder() { int i = 0; while (i == 0) { if (hentPerson() != 0) { printf("fejl, systemet afsluttes"); exit(EXIT_FAILURE); } sorterPatient(); printf ("metoden fra administrende medarbejder patient:\n"); printf("%s \n", patientDerBearbejdes.cprArray); printf("%c \n", patientDerBearbejdes.prioritet); printf("%c \n", patientDerBearbejdes.skadeartChar); }
return 0; }
hvis jeg fjerner den første while løkke kører det fint, men så længe den er der for jeg følgende fejl når jeg prøver at kører programmet: *** glibc detected *** double free or corruption (out): 0x0804b1a8 ***. Nogen der ved hvad denne fejl betyder, eventuelt ved hvad der er galt. Jeg ved godt at løkken kører uendeligt, men det er også meningen, den metode den kører sender noget data ind i en message que til en anden process, og det er meningen den bare skal blive ved med dette.
Ja, undskyld jeg har glemt at skrive det. Det er fordi jeg aldrig fik kaldt en free på den malloc jeg fik lavet nede i getKlokken metoden, med hensyn til at det ser syspect ud med kun at allokere 1 byte giver jeg dig ret, men jeg har bare kopieret det stykke kode, men har nu skrevet det om. Tak for hjælpen, smid et svar vis du vil have nogle point.
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.