Proc printf ceká na \n?

Vitezslav Samel samel na mail.cz
Úterý Říjen 9 08:20:02 CEST 2001


On Tue, Oct 09, 2001 at 07:34:48AM +0200, mira wrote:
> 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.


  RTFM:		man 3 setbuf


			Vita


Další informace o konferenci Linux