Linux时间函数C++之gettimeofday()函数之使用方法
来源:互联网 发布:桌面视频录制软件 编辑:程序博客网 时间:2024/05/01 12:00
1.简介:
在C语言中可以使用函数gettimeofday()函数来得到时间。它的精度可以达到微妙
2.函数原型:
#include<sys/time.h>
int gettimeofday(struct timeval*tv,struct timezone *tz )
3.说明:
gettimeofday()会把目前的时间用tv 结构体返回,当地时区的信息则放到tz所指的结构中
4.结构体:
1>timeval
struct timeval{
long tv_sec;/*秒*/
long tv_usec;/*微妙*/
};
2>timezone 结构定义为:
struct timezone{
int tz_minuteswest;/*和greenwich 时间差了多少分钟*/
int tz_dsttime;/*type of DST correction*/
}
3>在gettimeofday()函数中tv或者tz都可以为空。如果为空则就不返回其对应的结构体。
4>函数执行成功后返回0,失败后返回-1,错误代码存于errno中。
5.程序实例:
#include<stdio.h>
#include<sys/time.h>
#include<unistd.h>
int main()
{
struct timeval tv;
struct timezone tz;
gettimeofday(&tv,&tz);
printf(“tv_sec:%d\n”,tv.tv_sec);
printf(“tv_usec:%d\n”,tv.tv_usec);
printf(“tz_minuteswest:%d\n”,tz.tz_minuteswest);
printf(“tz_dsttime:%d\n”,tz.tz_dsttime);
}
说明:在使用gettimeofday()函数时,第二个参数一般都为空,因为我们一般都只是为了获得当前时间,而不用获得timezone的数值
二.gettimeofday()函数的一个常用方法
在测试程序时,往往需要了解程序执行所需的时间,在Linux中可以使用函数gettimeofday来得到时间.
1.程序实例:
测试调用delya()函数所需执行的时间(单位为微妙)
#include<stdio.h>
#include<sys/time.h>
#include<unistd.h>
int delay(int time)
{
int i,j;
for(i =0;i<time;i++)
for(j=0;j<5000;j++)
;
}
int main()
{
struct timeval start;
struct timeval end;
unsigned long diff;
gettimeofday(&start,NULL);
delay(10);
gettimeofday(&end,NULL);
diff = 1000000 * (end.tv_sec-start.tv_sec)+ end.tv_usec-start.tv_usec;
printf(“thedifference is %ld\n”,diff);
return 0;
}
说明:
使用该方法就可以检测出调用delay()函数所使用的时间
Linux时间函数之gettimeofday()函数之使用方法- Linux时间函数之gettimeofday()函数之使用方法
- Linux时间函数之gettimeofday()函数之使用方法
- Linux时间函数之gettimeofday()函数之使用方法
- Linux时间函数之gettimeofday()函数之使用方法
- Linux时间函数之gettimeofday()函数之使用方法
- Linux时间函数C++之gettimeofday()函数之使用方法
- Linux时间函数之gettimeofday()函数之使用方法
- Linux时间函数之gettimeofday()函数之使用方法
- Linux 时间函数之 gettimeofday() 函数之使用方法
- Linux时间函数之gettimeofday()函数之使用方法
- Linux时间函数之gettimeofday()函数之使用方法
- Linux时间函数之gettimeofday()函数之使用方法
- Linux时间函数之 gettimeofday() 函数之使用方法
- Linux时间函数之gettimeofday()函数之使用方法
- Linux时间函数之gettimeofday()函数之使用方法
- Linux时间函数之gettimeofday()函数
- c函数之gettimeofday()函数获取系统时间
- linux C 高精度时间函数:gettimeofday()
- Android实现推送方式解决方案
- Android Push Notification实现信息推送使用
- object references an unsaved transient instance - save the transient instance before flushing
- Application ENV parameter:CLASSPATH and AF_CLASSPATH
- HDOJ P1022 汉字统计
- Linux时间函数C++之gettimeofday()函数之使用方法
- 隐藏在内部的Bug KsMarketDataRepatchInterfaceReceiver
- JAVA 线程间通信 - 生产者与消费者
- 查看、分析memcached使用状态
- JSONObject中方法的区别
- android 之用ActivityGroup 实现Tab分页
- Qt Creator 不能解析库函数
- USACO Section 1.2.5 Palindromic Squares
- linux scp远程拷贝文件及文件夹