Avatar billede skra Nybegynder
27. maj 2003 - 22:15 Der er 10 kommentarer og
1 løsning

Jeg vil arbejde med outputtet fra et system()-kald i mit C progra

Hej

Jeg har et lille C program, der bl.a. bruger funktionen system() til at lave et kald i shellen, der returnerer noget tekst.

Teksten, der kommer fra system()-kaldet ønsker jeg at kigge nærmere på (jeg skal teste om den indeholder noget specielt).

Hvordan gør jeg det på den bedste måde?

Jeg har overvejet at kalde system("mitkald > enFil.txt") og så læse, hvad der er skrevet i filen, men jeg synes det virker lidt tungt.

Nogen bud`?
Avatar billede arne_v Ekspert
27. maj 2003 - 22:42 #1
Jeg mener ikke der er nogen standard løsninger.

Der er platform specifikke løsninger.

For Win32 se f.eks.:
  http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dllproc/base/creating_a_child_process_with_redirected_input_and_output.asp
Avatar billede thehidden Nybegynder
27. maj 2003 - 22:47 #2
#include <stdio.h>
main(char [input])
{system("echo %c", [input])}

dunno om det kan gøre det da jeg headcrashede i forgårs, men prøv!

thehidden
Avatar billede thehidden Nybegynder
27. maj 2003 - 22:49 #3
giv lige et svar hvis det virkede eller hjalp... :)

og husk lige semikolon inden sidste ølklammer

thehidden
Avatar billede thehidden Nybegynder
27. maj 2003 - 22:52 #4
og en anden ting... du skal nok ikke skrive main(char ¤input¤), men fx
main(char ¤input¤[]) og system("echo %c", ¤input¤[]);
Avatar billede arne_v Ekspert
27. maj 2003 - 22:54 #5
Øh.

Er det C ????
Avatar billede skra Nybegynder
27. maj 2003 - 23:00 #6
ja, det er C på Linux.
Avatar billede arne_v Ekspert
27. maj 2003 - 23:05 #7
Så kan du jo ikke bruge mit Win32 link til noget.

Spørgsmålet "Er det C ????" var iøvrigt til "thehidden" !

:-)
Avatar billede arne_v Ekspert
27. maj 2003 - 23:09 #8
På Linux skal du have fat på popen kaldet !
Avatar billede arne_v Ekspert
27. maj 2003 - 23:10 #9
Avatar billede arne_v Ekspert
02. juni 2003 - 20:28 #10
OK ?
Avatar billede skra Nybegynder
02. juni 2003 - 20:31 #11
Jeg har i mellemtiden fundet en anden løsning, men arne v: det ser interessant ud, så du får pointene.
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