温馨提示×

如何用cgettimeofday计算时长

小樊
81
2024-12-28 23:33:09
栏目: 编程语言

cgettimeofday 是一个 C 语言函数,用于获取当前系统时间(以微秒为单位)

#include <stdio.h>
#include <sys/time.h>
#include <stdlib.h>

int main() {
    struct timeval start_time, end_time;

    // 获取开始时间
    if (cgettimeofday(&start_time) == -1) {
        perror("cgettimeofday");
        return 1;
    }

    // 在这里执行你想要计算时长的操作
    // ...

    // 获取结束时间
    if (cgettimeofday(&end_time) == -1) {
        perror("cgettimeofday");
        return 1;
    }

    // 计算时长(以微秒为单位)
    long long duration_us = (end_time.tv_sec - start_time.tv_sec) * 1000000 + (end_time.tv_usec - start_time.tv_usec);

    // 将时长转换为毫秒
    double duration_ms = duration_us / 1000.0;

    printf("Duration: %.2f milliseconds\n", duration_ms);

    return 0;
}

这个示例首先获取开始时间,然后执行一些操作(在这里是一个占位符),接着获取结束时间。最后,它计算两个时间点之间的时长(以微秒为单位),并将其转换为毫秒。

0