1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
|
#include <stdio.h>
static int
do_test (void)
{
char buf[100];
int result = 0;
if (ferror (stdin) != 0)
{
fputs ("error bit set for stdin at startup\n", stdout);
result = 1;
}
if (fgets (buf, sizeof buf, stdin) != buf)
{
fputs ("fgets with existing input has problem\n", stdout);
result = 1;
}
if (ferror (stdin) != 0)
{
fputs ("error bit set for stdin after setup\n", stdout);
result = 1;
}
if (fputc ('a', stdin) != EOF)
{
fputs ("fputc to stdin does not terminate with an error\n", stdout);
result = 1;
}
if (ferror (stdin) == 0)
{
fputs ("error bit not set for stdin after fputc\n", stdout);
result = 1;
}
clearerr (stdin);
if (ferror (stdin) != 0)
{
fputs ("error bit set for stdin after clearerr\n", stdout);
result = 1;
}
return result;
}
#define TEST_FUNCTION do_test ()
#include "../test-skeleton.c"
|