c语言计算时间差的函数怎么用

2024-04-18

在C语言中,可以使用time.h头文件中的函数来计算时间差。以下是一个简单的示例函数,可以计算两个时间点之间的时间差:

#include <stdio.h>
#include <time.h>

void time_difference(struct tm start_time, struct tm end_time) {
    time_t start, end;
    
    start = mktime(&start_time);
    end = mktime(&end_time);
    
    double diff = difftime(end, start);
    
    printf("Time difference: %.2f seconds\n", diff);
}

int main() {
    struct tm start_time = {0};
    struct tm end_time = {0};
    
    start_time.tm_year = 121;  // year - 1900
    start_time.tm_mon = 0;     // month (0 - 11)
    start_time.tm_mday = 1;    // day of the month (1 - 31)
    
    end_time.tm_year = 121;    // year - 1900
    end_time.tm_mon = 3;       // month (0 - 11)
    end_time.tm_mday = 1;      // day of the month (1 - 31)
    
    time_difference(start_time, end_time);
    
    return 0;
}

在这个示例中,首先定义了一个time_difference函数,接受两个struct tm类型的参数,分别表示起始时间和结束时间。函数中使用mktime函数将时间结构转换为time_t类型,然后使用difftime函数计算时间差,并将结果打印出来。

main函数中定义了起始时间和结束时间,并调用了time_difference函数来计算时间差。可以根据实际情况修改起始时间和结束时间的值来计算不同时间点之间的时间差。