localtime函数

功能:

把从1970-1-1零点零分到当前时间系统所偏移的秒数时间转换为本地时间,而gmtime函数转换后的时间没有经过时区变换,是UTC时间 。

用法:

#include <time.h>

struct tm *localtime(const time_t *clock);

返回值:

指向tm 结构体的指针, tm结构体是time.h中定义的用于分别存储时间的各个量(年月日等)的结构体.

strftime函数

功能:

根据区域设置,格式化本地时间/日期,功能就是将时间格式化

用法:

#include <time.h>

size_t strftime(char * strDest,  size_t maxszie, const char * format,  const struct tm*  timeptr);

示例如下:

#include <stdio.h>
#include <unistd.h>
#include <time.h>

int main(void)
{
   char ct[80];
   time_t  tt;
   struct tm *tblock;

tt = time(NULL);
   tblock = localtime(&tt);

printf("Local time is %s\n", asctime(tblock));

strftime(ct, sizeof(ct), "%Y-%m-%d %H:%M:%S", tblock);
   printf("now is %s\n", ct);

return 0;
}

结果:

localtime函数和strftime函数-LMLPHP

备注:

strftime函数常使用的formate参数:

specifierReplaced byExample
%aAbbreviated weekday name *Thu
%AFull weekday name *Thursday
%bAbbreviated month name *Aug
%BFull month name *August
%cDate and time representation *Thu Aug 23 14:55:02 2001
%dDay of the month (01-31)23
%HHour in 24h format (00-23)14
%IHour in 12h format (01-12)02
%jDay of the year (001-366)235
%mMonth as a decimal number (01-12)08
%MMinute (00-59)55
%pAM or PM designationPM
%SSecond (00-61)02
%UWeek number with the first Sunday as the first day of week one (00-53)33
%wWeekday as a decimal number with Sunday as 0 (0-6)4
%WWeek number with the first Monday as the first day of week one (00-53)34
%xDate representation *08/23/01
%XTime representation *14:55:02
%yYear, last two digits (00-99)01
%YYear2001
%ZTimezone name or abbreviationCDT
%%% sign%
04-25 22:54
查看更多