int i;
size_t i;
test_tm (void){  struct tm tm;  int i;  int result = 0;  char buf[100];  for (i = 0; i < sizeof (tm_tests) / sizeof (tm_tests[0]); ++i)    {      memset (&tm, '\0', sizeof (tm));      if (*strptime (tm_tests[i].input, tm_tests[i].format, &tm) != '\0')	{	  printf ("not all of `%s' read\n", tm_tests[i].input);	  result = 1;	}      strftime (buf, sizeof (buf), "%F %T", &tm);      printf ("strptime (\"%s\", \"%s\", ...)\n"	      "\tshould be: %s, wday = %d, yday = %3d\n"	      "\t       is: %s, wday = %d, yday = %3d\n",	      tm_tests[i].input, tm_tests[i].format,	      tm_tests[i].output,	      tm_tests[i].wday, tm_tests[i].yday,	      buf, tm.tm_wday, tm.tm_yday);      if (strcmp (buf, tm_tests[i].output) != 0)	{	  printf ("Time and date are not correct.\n");	  result = 1;	}      if (tm.tm_wday != tm_tests[i].wday)	{	  printf ("weekday for `%s' incorrect: %d instead of %d\n",		  tm_tests[i].input, tm.tm_wday, tm_tests[i].wday);	  result = 1;	}      if (tm.tm_yday != tm_tests[i].yday)	{	  printf ("yearday for `%s' incorrect: %d instead of %d\n",		  tm_tests[i].input, tm.tm_yday, tm_tests[i].yday);	  result = 1;	}    }  return result;}