linux中time的使用(基于itop4412)
2018-07-12 本文已影响0人
嵌入式工作
linux中time的使用(基于itop4412)
1获取获取机器时间函数用法
获取机器时间函数
• time_t time(time_t t);
– 参数t:以秒为单位的机器时间
– 返回值:如果参数为NULL,则返回机器时间;错误返回-1;
– time_t类型实际是一个long int类型
man 2 time
image.png
测试代码
#include <stdio.h>
#include <time.h>
int main(int argv,char*argc[])
{
time_t ptime_sec;
time(&ptime_sec);
printf("utc sec is :%d \n",ptime_sec);
ptime_sec=time(NULL);
printf("2 utc sec is :%d \n",ptime_sec);
return 0;
}
2其他时间相关的函数用法
将时间转化为字符串格式
• char *ctime(const time_t *timep);
• 将时间转化为格林威治时间
• struct tm *gmtime(const time_t *timep);
时间转换为字符格式,注意这个函数的参数是tm 结构的
• char *asctime(const struct tm *tm);
• 时间转化为本地时间
• struct tm *localtime(const time_t *clock);
#include <stdio.h>
#include <time.h>
int main(int argv,char*argc[])
{
time_t ptime_sec;
tm *ptm_time;
time(&ptime_sec);
printf("utc time(&ptime_sec) sec is :%d \n",ptime_sec);
ptime_sec=time(NULL);
printf("2 time(NULL) utc sec is :%d \n",ptime_sec);
printf("ctime :%s \n "ctime(&ptime_sec));
#if 0
/*
struct tm {
int tm_sec; /* seconds */
int tm_min; /* minutes */
int tm_hour; /* hours */
int tm_mday; /* day of the month */
int tm_mon; /* month */
int tm_year; /* year */
int tm_wday; /* day of the week */
int tm_yday; /* day in the year */
int tm_isdst; /* daylight saving time */
};
*/
#endif
ptm_time=gmtime(&ptime_sec);
printf("gmtime : y-%d m-%d\n ,ptm_time->tm_year,ptm_time->tm_mon);
return 0;
}