Mega Code Archive

 
Categories / C / Code Snippets
 

Format time and date into a string

//Declaration: size_t strftime(char *str, size_t maxsize, const char *fmt, const struct tm *time); //Command Replaced By //%a: Abbreviated weekday name //%A: Full weekday name //%b: Abbreviated month name //%B: Full month name //%c: Standard date and time string //%C: Last two digits of year //%d: Day of month as a decimal (1-31) //%D: month/day/year (added by C99) //%e: Day of month as a decimal (1-31) in a two-character field (added by C99) //%F: year-month-day (added by C99) //%g: Last two digits of year using a week-based year (added by C99) //%G: The year using a week-based year (added by C99) //%h: Abbreviated month name (added by C99) //%H: Hour (0-23) //%I: Hour (1-12) //%j: Day of year as a decimal (1-366) //%m: Month as decimal (1-12) //%M: Minute as decimal (0-59) //%n: A newline (added by C99) //%p: Locale's equivalent of AM or PM //%r: 12-hour time (added by C99) //%R: hh:mm (added by C99) //%S: Second as decimal (0-60) //%t: Horizontal tab (added by C99) //%T: hh:mm:ss (added by C99) //%u: Day of week; Monday is first day of week (0-53) (added by C99) //%U: Week of year, Sunday being first day (0-53) //%V: Week of year using a week-based year (added by C99) //%w: Weekday as a decimal (0-6, Sunday being 0) //%W: Week of year, Monday being first day (0-53) //%x: Standard date string //%X: Standard time string //%y: Year in decimal without century (0-99) //%Y: Year including century as decimal //%z: Offset from UTC (added by C99) //%Z: Time zone name //%%: The percent sign #include <time.h> #include <stdio.h> int main(void) { struct tm *ptr; time_t lt; char str[80]; lt = time(NULL); ptr = localtime(&lt); strftime(str, 100, "It is now %H %p.", ptr); printf(str); return 0; }