size_t strftime(char *str,size_t max,char *fmt,struct tm *tp); 
strftime有点像sprintf,其格式由fmt来指定。 
%a : 本第几天名称,缩写。 
%A : 本第几天名称,全称。 
%b : 月份名称,缩写。 
%B : 月份名称,全称。 
%c : 与ctime/asctime格式相同。 
%d : 本月第几日名称,由零算起。 
%H : 当天第几个小时,24小时制,由零算起。 
%I : 当天第几个小时,12小时制,由零算起。 
%j : 当年第几天,由零算起。 
%m : 当年第几月,由零算起。 
%M : 该小时的第几分,由零算起。 
%p : AM或PM。 
%S : 该分钟的第几秒,由零算起。 
%U : 当年第几,由第一个日开始计算。 
%W : 当年第几,由第一个一开始计算。 
%w : 当第几日,由零算起。 
%x : 当地日期。 
%X : 当地时间。 
%y : 两位数的年份。 
%Y : 四位数的年份。 
%Z : 时区名称的缩写。 
%% : %符号。 
char * strptime(char *s,char *fmt,struct tm *tp); 
如同scanf一样,解译字串成为tm格式。 
%h : 与%b及%B同。 
%c : 读取%x及%X格式。 
%C : 读取%C格式。 
%e : 与%d同。 
%D : 读取%m/%d/%y格式。 
%k : 与%H同。 
%l : 与%I同。 
%r : 读取"%I:%M:%S %p"格式。 
%R : 读取"%H:%M"格式。 
%T : 读取"%H:%M:%S"格式。 
%y : 读取两位数年份。 
%Y : 读取四位数年份。 
下面举一个小例子,说明如何获得系统当前时间:
time_t now;
struct tm *timenow;
char strtemp[255];
time(&now);
timenow = localtime(&now);
printf("recent time is : %s \n", asctime(timenow)); 
