Problem s pipeou a potomkom... – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Problem s pipeou a potomkom... – C / C++ – Fórum – Programujte.comProblem s pipeou a potomkom... – C / C++ – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
Smokie0
Expert
12. 11. 2007   #1
-
0
-

Ahojte,

v skole nam dali za ulohu urobit jeden program, ktory je zlozeny z rodica a potomka. Rodic ma zapisat do nepomenovanej rury text malymi pismenami a potomok ho precitat a vypisat velkymi. Len moj problem je ten, ze ten text neviem nijak raz cez tu ruru preniest... Prosim o radu, pomoc, cokolvek.

rodic.c:

#include <stdio.h>

#include <unistd.h>
#include <stdlib.h>
#include <string.h>

int main()
{
int pid;
int file_pipes[2];
const char text[] = "hello world!";

pipe(file_pipes);
pid=fork();
write(file_pipes[1], text, strlen(text));

switch(pid)
{
case -1:
perror("Nepodarilo sa vytvorit potomka.");
break;

case 0:
execve("potomok", NULL, NULL);
break;

case 1:
printf("Ja som rodic...");
break;
}
}


potomok.c (neskor skompilovany ako "potomok")
#include <stdio.h>

#include <unistd.h>
#include <stdlib.h>
#include <string.h>

int main()
{
int file_pipes[2];
int data;
char buffer[BUFSIZ+1];

memset(buffer, '\0', sizeof(buffer));

data = read(file_pipes[0], buffer, BUFSIZ);
printf("Vypis pipe: %s\n", buffer);
exit(EXIT_SUCCESS);
}


Mam taku predtuchu, ze mi tam CuroBOT prida niekolko zbytocnych lomitiek pred uvodzovky :)

Nahlásit jako SPAM
IP: 88.212.21.–
Reklama
Reklama
sn3d0
Věrný člen
13. 11. 2007   #2
-
0
-

tieto zadania na apocet sa tu opakuju rok co rok :) skus sa prehrabat historiou fora. Tusim ze som prave na tomto fore niekomu prave taketo nieco riesil. NIesom si vsak isty ci to bolo tu.Rok je dlha doba pre moju hlavu :)

Nahlásit jako SPAM
IP: 213.151.208.–
shutdown -h now
Smokie0
Expert
13. 11. 2007   #3
-
0
-

Dakujem, idem to pohladat :)

Inak toto nie je zadania na zapocet, aspon u nas nie. Toto je len zadanie z jedneho cvicenia za 1 BOD! :D

Zadania bude monstroznejsie...program v C, ktory bude vyuzivat fork, pipes, semafory a neviem co ja este vsetko...


EDIT: Uz som to nasiel, ale bohuzial to moj problem nevyriesilo

Nahlásit jako SPAM
IP: 88.212.21.–
Payne
~ Anonymní uživatel
37 příspěvků
17. 11. 2007   #4
-
0
-

Zdravim studenta Technickej univerzity...

Inak v zadani nebolo ze musis spustat potomka ako samostatny program, takze to tak nepis a pojde ti to...

Mne to ide tak...

Nahlásit jako SPAM
IP: 217.119.114.–
Smokie0
Expert
17. 11. 2007   #5
-
0
-

Ok, vyskusam :)

Nahlásit jako SPAM
IP: 88.212.21.–
Payne
~ Anonymní uživatel
37 příspěvků
17. 11. 2007   #6
-
0
-

Inak este taka vec, samozrejme to ide aj tak ako si ty chcel, lenze mas tam jeden dost podstatny nedostatok...

A sice ze tam predsa musis predat deskriptor suboru, resp. rury do potomka ale ty mu nic neposles a definujes si tam ine pole, ktore ma nahodne hodnoty... Takze to takto isto nepojde...

Dalsia vec je ze ked uz okopirovavas cely zdrojak z cvik, tak sa nad nic aspon zamysli - premennu data vobec nevyuzijes a aj dalsia vec ze pochybujem ci vobec vies na co je funkcia memset, lebo tam aj tak nema ziaden zmysel ju pisat... Dlasia vec ze rodic ma do rury zapisat text...

Nahlásit jako SPAM
IP: 217.119.114.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 250 hostů

Podobná vlákna

Problém — založil Trumpetka

Problém s VC++ — založil beb

Problém s IE — založil kECUB

Problém v C++ — založil Honza

Problém s FF — založil Janina

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý