Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1021172
  • 博文数量: 123
  • 博客积分: 1029
  • 博客等级: 准尉
  • 技术积分: 1167
  • 用 户 组: 普通用户
  • 注册时间: 2012-02-13 00:15
文章分类

全部博文(123)

文章存档

2014年(24)

2013年(45)

2012年(54)

分类: LINUX

2014-09-07 20:50:43

1. gettimeofday 精确到微秒级别 
计时函数 int gettimeofday(struct timeval *tv,struct timezone *tz);
说明:gettimeofday将时间保 存在结构tv之中,strut timeval gives the number of seconds and microseconds since the Epoch,(00:00:00 UTC, January 1, 1970), measured in microseconds.   tz(即timezone,很少用到)一般我们使用null来代替。
保存时间的结构体
strut timeval {
long tv_sec;
long tv_usec;
};
注:需要头文件#include

示例代码:
#include
#include
int main()
{
   struct timeval tpstart,tpend;
   double timeuse;
   gettimeofday(&tpstart,NULL);
   function()
   gettimeofday(&tpend,NULL);
   timeuse=1000000*(tpend.tv_sec-tpstart.tv_sec)+tpend.tv_usec-tpstart.tv_usec;     //注意,秒的读数和微秒的读数都应计算在内
   printf("used time:%fus\n",timeuse);
}

2. 显示时间
time_t time(time_t *tloc);                 //时间精度为秒
char *ctime(const time_t *clock);         //将秒数转化为字符串
time函数返回从1970年1月1日0点以来的秒数[注意,此函数返回的时间精 度是“秒”]。存储在time_t结构之中。不过这个函数的返回值对于我们来说没有什么实际意义。这个时候我们使用第二个函数将秒数转化为字符串。 这个函数的返回类型是固定的:一个可能值为。 thu dec 7 14:58:59 2000 这个字符串的长度是固定的为26
time_t类型实际上是由typedef定义的,并不是一个新类型,对于多数系统来说,time_t就是long。

struct tm * gmtime(const time_t *timer);
gmtime()函数是将日历时间转化为世界标准时间(即格林尼治时间),并返回一个tm结构体来保存这个时间
struct tm * localtime(const time_t * timer);
localtime()函数是将日历时间转化为本地时间

示例代码:
#include //注:不是 否则编译不报错,但运行报段错误
#include
int main()
{
   time_t now;
   now = time(NULL);
   printf("%s", ctime(&now));
   return 0;
}
输出:Tue Jun 26 16:29:18 2007

阅读(2625) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~