summaryrefslogtreecommitdiff
path: root/lib/libc/time/asctime.c
blob: ab5ff09628fe469f4a7ad12c8d2faee84eff4f70 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <time.h>
#include <stdio.h>

char *asctime(const struct tm *timeptr)
{
	static char wday_name[][4] = { "Sun", "Mon", "Tue", "Wed",
				       "Thu", "Fri", "Sat" };
	static char mon_name[][4] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
				      "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
	static char result[26];

	snprintf(result, sizeof(result), "%.3s %.3s%3d %.2d:%.2d:%.2d %d\n",
		 wday_name[timeptr->tm_wday], mon_name[timeptr->tm_mon],
		 timeptr->tm_mday, timeptr->tm_hour, timeptr->tm_min,
		 timeptr->tm_sec, 1900 + timeptr->tm_year);

	return result;
}