在 Linux 中,gettimeofday
是一个用于获取当前系统时间的函数
#include <sys/time.h>
#include <stdio.h>
int main() {
struct timeval tv;
// 调用 gettimeofday 函数
if (gettimeofday(&tv, NULL) == -1) {
perror("gettimeofday");
return 1;
}
// 输出获取到的时间
printf("Current time: %ld seconds %ld microseconds\n", tv.tv_sec, tv.tv_usec);
return 0;
}
在这个示例中,我们首先包含了 <sys/time.h>
头文件,它包含了 gettimeofday
函数的声明。然后,我们在 main
函数中定义了一个 struct timeval
类型的变量 tv
,用于存储获取到的时间。
接下来,我们调用 gettimeofday
函数,并将 tv
作为第一个参数传递。第二个参数是一个指向 struct timezone
类型的指针,我们将其设置为 NULL
,因为我们不需要时区信息。
如果 gettimeofday
函数调用成功,它将返回 0;否则,它将返回 -1,并设置 errno
以表示错误原因。在这个示例中,我们检查 gettimeofday
的返回值,并在发生错误时使用 perror
函数输出错误信息。
最后,我们输出获取到的时间,包括秒数和微秒数。