|
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
memarko Član
Pridružen-a: Pon 03 Nov 2003 9:37 Prispevkov: 24 Aktiv.: 0.11
|
Objavljeno: Pon Mar 22, 2004 7:58 am Naslov sporočila: Sprotna obdelava podatkov pri ukazu | |
|
|
V unixu bi rad sproti obdeloval podatke neke aplikacije, ki se prikazujejo na zaslonu.
Poizkusil [slovenščina je zame španska vas] z ukazom <aplikacija1>|<aplikacija2>
Problem je, stvar ne tece vzporedno in da se najprej izvrsi aplikacija1 potem pa obdela podatke aplikacija2.
Zanimivo je, da ukaz <aplikacija>|more izvaja socasno ostalo mi pa ne rata.
[/quote]
_________________ Me_Marko |
|
Nazaj na vrh |
|
|
frenki Moderator
Pridružen-a: Ned 23 Feb 2003 21:26 Prispevkov: 6555 Aktiv.: 29.40 Kraj: Ljubljana (JN76GB)
|
Objavljeno: Čet Mar 25, 2004 10:47 pm Naslov sporočila: |
|
|
Lahko malo napišeš kako pravzaprav obdeluješ te podatke? Variant tega je več, čeprav se malo bojim, da ne razumem v celoti problema. Ali ti aplikacija1 zapisuje rezultate obdelave v datoteko? Kaj pravzaprav počne aplikacija2? Napiši konkreten primer, pa bomo poskusili skupaj poiskat optimalno rešitev.
Lp, Frenki
|
|
Nazaj na vrh |
|
|
memarko Član
Pridružen-a: Pon 03 Nov 2003 9:37 Prispevkov: 24 Aktiv.: 0.11
|
Objavljeno: Sre Apr 07, 2004 3:15 pm Naslov sporočila: |
|
|
Takole gre vse skupi:
aplikacija1 zajame podatke iz standardnega vhoda to je tipkovnica,
aplikacija2 pa podatke obdela in jih izpise na ekran.
aplikacija2 caka(, da se napolni tokovni buffer (vsaj [slovenščina je zame švedska vas] pravi asistent na faksu jest mislim, da caka na konec izvajanja aplikacije1) )
Zato podatki vneseni z tipkovnico cakajo do (eof()-konca vnasanja vseh podatkov) preden se podatki pojavijo na ekranu
Uspelo mi je resit problem :
Sam sem poskusil tokova zdruziti z || in tako aplikacja2 ne caka da aplikacija1 zakljuci vnasanje podatkov.
_________________ Me_Marko |
|
Nazaj na vrh |
|
|
frenki Moderator
Pridružen-a: Ned 23 Feb 2003 21:26 Prispevkov: 6555 Aktiv.: 29.40 Kraj: Ljubljana (JN76GB)
|
Objavljeno: Sre Apr 07, 2004 5:07 pm Naslov sporočila: |
|
|
Asistentova trditev bo kar držala. Če imaš možnost poskusit z večjim vhodmim naborom, se lahko v to tudi prepričaš. Za poskus lahko narediš tudi tole :
Koda: |
cd /
find . -print | grep a |
Glede tvojega problema pa: daj no, pripni vsaj en primer tega kar naj bi zadeva počela, ker mi še vedno ni povsem jasno v čem je pravzaprav problem.
Lp, Frenki
p.s. Preberi si pravilo št. 1 .
|
|
Nazaj na vrh |
|
|
memarko Član
Pridružen-a: Pon 03 Nov 2003 9:37 Prispevkov: 24 Aktiv.: 0.11
|
Objavljeno: Čet Apr 08, 2004 7:39 am Naslov sporočila: |
|
|
Upam da me bos tokrat kej bolj razumel.
najbrs sem premalo podrobno opisal kako program zajema podatke.
v C-ju [slovenščina je zame španska vas] napisal program, ki pretvarja rimske in arabske stevile in obratno arabske v rimske stevilke. Avtomatsko zazna ali je vneseno stevilo rimsko ali arabsko. Ce je vnos napacen to tudi napise.
Za vnos in izpis podatkov uporablja "scanf" in "printf".
vnos poteka dokler nezazna konec datoteke stdin-a (standardnega vhoda - torej konec datoteke ali tipkovnice) ali pa dokler ni vnesen znak "q".
Malo sem se poigral z cevmi in oba programa povezal "./rimske|./rimske"
Stevila sem lahko vnasal, vneseno stevilo pa se ni izpisalo sproti po posameznem vnosu. Sele na koncu ko sem vnesel q se je vse skupaj izpisalo.
Narobe je morda to ker je buffer med obema programoma prevelik in ne stecejo podatki v drug program.
Poizkusil sem z uporabo "||" in tako se je po vsakem vnosu izpisalo tudi vneseno stevilo stevilo.
tu posiljam tudi izvorno kodo in preveden program z "gcc"-jem (prevajalnikom za c)
Opis: |
|
Download |
Ime datoteke: |
rimske.c |
Velikost datoteke: |
5.37 KB |
Downloadano: |
4 krat |
_________________ Me_Marko |
|
Nazaj na vrh |
|
|
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu Ne, ne moreš pripeti datotek v tem forumu Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 74 dni
Powered by phpBB © 2001, 2005 phpBB Group
|