Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: XP bug? (code fragment)

Author: Gerd Isenberg

Date: 12:07:28 08/27/04

Go up one level in this thread


On August 27, 2004 at 14:58:56, Gerd Isenberg wrote:

>On August 27, 2004 at 14:28:06, Bas Hamstra wrote:
>
>>The following program gives me other output in XP than under previous windows
>>versions:
>>
>>#include <stdio.h>
>>#include <conio.h>
>>
>>int main(int argc, char* argv[])
>>{       char Buf[16] = {0};
>>
>>        setbuf(stdin, NULL);
>>
>>        while(1)
>>        {   if(kbhit() )
>>            {   gets(Buf);
>>                printf("Received: %s\n", Buf);
>>            }
>>        }
>>        return 0;
>>}
>>
>>Output:
>>
>>aaa
>>Received: Paa
>>
>>So, if after typing aaa the first character seems to go lost. I am pretty
>>certain that under Win98 it worked like intended. Is this a bug?
>>
>>(I am using XP with Borland C++ Builder 4.0)
>>
>>Bas.
>
>
>with msc6 under XP i get
>aaa  (or any other sequence)
>Received: d
>
>Seems that stdin does not work unbuffered.
>
>Gerd


from

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vccore98/HTML/_crt_setbuf.asp

...

setbuf has been replaced by setvbuf, which is the preferred routine for new
code. setbuf is retained for compatibility with existing code.



This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.