Linux:LinuxC获取当前系统时间的时间戳(精确到秒、毫秒、
微秒)gettimeofday
说明
linux下的sleep函数获取当前的时间的秒数和微秒数本⽅法需要⽤到 gettimeofday() 函数,该函数需要引⼊的头⽂件是  <sys/time.h>  。
函数说明 int gettimeofday (struct timeval * tv, struct timezone * tz)
1、返回值:该函数成功时返回0,失败时返回-1
2、参数
struct timeval{
  long tv_sec; //秒
  long tv_usec; //微秒
};
struct timezone
{
  int tz_minuteswest; //和Greenwich 时间差了多少分钟
  int tz_dsttime; //⽇光节约时间的状态
};
⽰例
#include <sys/time.h>
#include <stdio.h>
#include <unistd.h>
int main()
{
struct timeval tv;
gettimeofday(&tv, NULL);
printf("second: %ld\n", tv.tv_sec); // 秒
printf("millisecond: %ld\n", tv.tv_sec * 1000 + tv.tv_usec / 1000); // 毫秒
printf("microsecond: %ld\n", tv.tv_sec * 1000000 + tv.tv_usec); // 徽秒
sleep(3); // 让程序休眠3秒
printf("---------------------sleep 3 second-------------------\n");
gettimeofday(&tv, NULL);
printf("second: %ld\n", tv.tv_sec); // 秒
printf("millisecond: %ld\n", tv.tv_sec * 1000 + tv.tv_usec / 1000); // 毫秒
printf("microsecond: %ld\n", tv.tv_sec * 1000000 + tv.tv_usec); // 徽秒
return0;
}
运⾏结果:
second: 1554963664
millisecond: 1554963664748
microsecond: 1554963664748007
---------------------sleep 3 second-------------------
second: 1554963667
millisecond: 1554963667748
microsecond: 1554963667748621

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。