#include <stdio.h>
#include <stddef.h>
#include <time.h>
#include <sys/time.h>
/*
1.字符串
#include <stdio.h>
#include <stddef.h>
#include <time.h>
*/
void Test_Asctime(void)
{
time_t timer;//time_t就是long int 类型
struct tm * tblock;
timer = time(NULL);
tblock = localtime(&timer);
printf("Test_Asctime: %s\n",asctime(tblock));
}
/*
2.结构变量
#include<time.h>
#include<stdio.h>
*/
void Test_Localtime()
{
struct tm *t;
time_t tt;
time(&tt);
t=localtime(&tt);
printf("time_t tt:%ld\n",tt);
printf("Test_Localtime:%4d年%02d月%02d日 %02d:%02d:%02d\n\n",t->tm_year+1900,t->tm_mon+1,t->tm_mday,t->tm_hour,t->tm_min,t->tm_sec);
}
/*
3.精确到微秒/毫秒
[无法用一个函数得到,除非自己实现]
#include <stdio.h>
#include <time.h>
#include <sys/time.h>
*/
void Test_UsecTime()
{
struct timeval tv;
struct timezone tz;
struct tm *p;
gettimeofday(&tv, &tz);//gettimeofday(&tv, NULL);
printf("tv_sec:%ld\n",tv.tv_sec);
printf("tv_usec:%ld\n",tv.tv_usec);
// printf("tz_minuteswest:%d\n",tz.tz_minuteswest);
// printf("tz_dsttime:%d\n",tz.tz_dsttime);
p = localtime(&tv.tv_sec);
printf("Test_UsecTime:%d:%d:%d %d:%d:%d %ld:%ld\n", 1900+p->tm_year, 1+p->tm_mon, p->tm_mday, p->tm_hour, p->tm_min, p->tm_sec, tv.tv_usec/1000,tv.tv_usec%1000);
}
int main(void)
{
Test_Asctime();
Test_Localtime();
Test_UsecTime();
return 0;
}
/**
执行结果:
Test_Asctime: Tue Jul 26 12:54:19 2016
time_t tt:1469508859
Test_Localtime:2016年07月26日 12:54:19
tv_sec:1469508859
tv_usec:543745
Test_UsecTime:2016:7:26 12:54:19 543:745
*/
linux time
最新推荐文章于 2022-03-09 18:36:13 发布