Delay function?
BCS
ao at pathlink.com
Tue Sep 2 13:37:46 PDT 2008
Reply to Brendan,
> Jarrett Billingsley Wrote:
>
>> On Tue, Sep 2, 2008 at 1:37 PM, Chris R. Miller <
>> lordSaurontheGreat at gmail.com> wrote:
>>> Brendan wrote:
>>>
>>>> Jarrett Billingsley Wrote:
>>>>
>>>>> </blockquote></div><br>If you're expecting it to pause after each
>>>>>
>>> character.. you're missing braces around the body of the for loop,
>>> this isn't Python ;)<br></div>
>>>
>>>> Oooooh, what a foolish mistake! How could I forget that? Thanks for
>>>>
>>> pointing it out.
>>>
>>>> But the result isn't fruitful, though. When I run it, all I get is
>>>> an
>>>>
>>> empty screen, then after many seconds the whole string is displayed
>>> at once (not to mention I set the sleep time to 0.1 seconds). I'm
>>> probably missing something. Any idea?
>>>
>>> Flush the output?
>>>
>> Totally.
>>
>> foreach(ch; s) { write(ch); fflush(stdout); system("pause 0.2"); }
>>
> Thanks! With a little quick tweaking it worked. But, even though I see
> the effective result, I don't entirely understand what it means "to
> flush" the output. I've never heard of this concept before and Google
> doesn't seem to return any useful answers. Could you explain?
>
The act of making the screen show text is rather costly in time, so generally
libs buffer your output, often until a newline or some preset amount. Flush
just forces a buffer flush and the resultant output.
More information about the Digitalmars-d-learn
mailing list