Proc printf ceká na \n?

mira mira na tmapy.cz
Úterý Říjen 9 07:34:48 CEST 2001


Ve svém program si nechávám v jisté cyklu vždy vypsat řetězec - uvnitr
cyklu mam blok:       res = read(fd,buf,255);
      buf[res]=0;
      printf("%s", buf);

Příkazem read čtu ze seriového portu - tam to mám ovšem nastavené, že to
přečte vše a nečeká to tam na \n. Přesto se mi výstup na obrazovce z
příkazu printf objeví až v momentě, kdy je na výstup posláno \n. (Pokud
tam dám printf("%s\n",buf), výstup se objeví vždy rovnou okamžitě. 
 S tímto jsem se při práci se stdout ještě nesetkal. V čem je problém a
jak udělat, aby výstup na obrazovku posílal ihned, ne až po odeslání \n?

 Michal Řada, Mgr.


Další informace o konferenci Linux