Avatar billede marn133 Nybegynder
07. maj 2006 - 20:10 Der er 6 kommentarer og
1 løsning

fgets() kan ikke hente alle linjerne ind.

hej eksperter...

Jeg er nybegynder i C og vil meget gerne lære sproget, jeg bruger linux (Debian)

jeg har derfor givet mig selv den udfordring at lave en GUI til et program der ellers kun kør i konsollen.

Men jeg kan ikke hente alle linjerne ind fra konsollen, nogle bliver stående...!!

Selv når jeg i konsollen skriver kommando>log og åbner log bagefter kommer alle linjerne ikke med....

hvad er der galt, og kan der gøres noget ved det ??
Avatar billede bertelbrander Praktikant
07. maj 2006 - 21:45 #1
Jeg forstår ikke spørgsmålet.

Er det et eksisterende program som du vil hente al output fra?

Du skal måske sikre dig at du henter både stdout og stderr.
Avatar billede marn133 Nybegynder
07. maj 2006 - 22:10 #2
ja det er et eksisterende program..

Okay, har lige læst op på stdout og stderr, er jo som sagt nybegynder inden for C :)

og det lyder sandsynligt at det er stderr. jeg ikke kan læse....

er det muligt at læse stderr også ?

jeg bruger følgende kode til at "læse":

    FILE *in;
    extern FILE *popen();
    char buff[5129];
    char output[999999];

    if (!(in = popen(command, "r"))) {
        exit(1);
    }
      while (fgets(buff, sizeof(buff), in) != NULL ) {
    sprintf(output, "%s%s", output, buff);
      }
      pclose(in);
Avatar billede bertelbrander Praktikant
07. maj 2006 - 22:55 #3
Ifølge denne:
http://www.phim.unibe.ch/comp_doc/c_manual/C/FUNCTIONS/popen.html

Skal du tilføje 2>&1 til kommandoen.

Det virker på Windows uden, og jeg har ikke Linux.
Avatar billede marn133 Nybegynder
07. maj 2006 - 23:07 #4
Fantastisk...

Smid et svar så du kan points...

Mange tak....!
Avatar billede bertelbrander Praktikant
07. maj 2006 - 23:09 #5
Jeg samler ikke på point, så du må gerne tage dem tilbage.
Avatar billede marn133 Nybegynder
07. maj 2006 - 23:23 #6
og al respekt for det !

Men jeg vil idet midste gi dig en go karma.... :D
Avatar billede marn133 Nybegynder
10. maj 2006 - 23:41 #7
lukker og slukker.
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