C++在linux环境下获取毫秒、微妙级别时间
一、时间单位简介:
1秒 = 1000毫秒
1秒 = 1000000微秒
1秒 = 1000000000纳秒
二、简介:
C++中需要获取当前的时间的秒数和微秒数,需要用到gettimeofday()函数,该函数需要引入的头文件是 “sys/time.h ”。
函数说明int gettimeofday (struct timeval * tv, struct timezone * tz)
1、返回值:该函数成功时返回0,失败时返回-12、参数
struct timeval{
long tv_sec; //秒
long tv_usec; //微秒
};
struct timezone
{
int tz_minuteswest; //和Greenwich 时间差了多少分钟
int tz_dsttime; //日光节约时间的状态
};
三、实例
#include <iostream> |
#include <sys/time.h> |
using namespace std; |
int main(int argc ,char *argv[]){ |
//get time ms and us struct timeval tv; |
struct timezone tz; |
gettimeofday(&tv,&tz); |
cout << "second : \t" << tv.tv_sec << endl; //秒 |
cout << "millisecond : \t" << tv.tv_sec*1000 + tv.tv_usec/1000 << endl; // 毫秒 |
cout << "micronsecond : \t" << tv.tv_sec*1000000 +tv.tv_usec <<endl; // 微妙 |
} |