C语言求时间差函数,c语言计算日期差

C语言中计算2个时间的差值的函数

#include time.h

成都创新互联技术团队10余年来致力于为客户提供网站建设、成都网站建设成都品牌网站建设营销型网站、搜索引擎SEO优化等服务。经过多年发展,公司拥有经验丰富的技术团队,先后服务、推广了上千多家网站,包括各类中小企业、企事单位、高校等机构单位。

#include stdio.h

time_t _mktime( char *slTime ) /** yyyy-mm-dd **/

{

struct tm tm_t;

int year;

int mon;

int day;

sscanf( slTime, "%4d-%2d-%2d", year, mon, day );

tm_t.tm_year = year - 1900;

tm_t.tm_mon = mon - 1;

tm_t.tm_mday = day;

tm_t.tm_hour = 12;

tm_t.tm_min = 00;

tm_t.tm_sec = 01;

tm_t.tm_wday = 0;

tm_t.tm_yday = 0;

tm_t.tm_isdst = 0;

return mktime( tm_t );

}

int daydiff( char *date1, char *date2 ) /** yyyy-mm-dd **/

{

time_t t1 = _mktime( date1 );

time_t t2 = _mktime( date2 );

time_t diff = abs( t2 - t1 );

return (int)( diff / (24*60*60) );

}

int main()

{

char date1[12], date2[12];

printf( "input date1: " );

scanf( "%s", date1 );

fflush( stdin );

printf( "input date2: " );

scanf( "%s", date2 );

fflush( stdin );

printf( "%s - %s is %d days\n", date1, date2, daydiff(date1, date2) );

}

c语言如何计算时间差

bool computer(file_date_t t1, file_date_t t2)

{

int min = t1.i_ddt2.i_dd?t1.i_dd:t2.i_dd;

int time1 = (t1.i_dd-min)*24+t1.i_hh;

int time2 = (t2.i_dd-min)*24+t2.i_hh;

if (time1  time2)

{

if (time1 - time2  12)

{

printf("时间超过12个小时!\n");

return true;

}

printf("时间不超过12个小时!\n");

return false;

}

else

{

if (time2 - time1  12)

{

printf("时间超过12个小时!\n");

return true;

}

printf("时间不超过12个小时!\n");

return false;

}

}

C语言中如何计算时间差

#include stdio.h

#include stdlib.h

#include time.h

void main()

{

unsigned char time1[] = { 10, 8, 31, 9, 26 };

unsigned char time2[] = { 10, 8, 31, 9, 50 };

struct tm t1 = {0};

struct tm t2 = {0};

time_t _t1;

time_t _t2;

double diff;

t1.tm_year = time1[0] + 100;

t1.tm_mon = time1[1];

t1.tm_mday = time1[2];

t1.tm_hour = time1[3];

t1.tm_min = time1[4];

t2.tm_year = time2[0] + 100;

t2.tm_mon = time2[1];

t2.tm_mday = time2[2];

t2.tm_hour = time2[3];

t2.tm_min = time2[4];

_t1 = _mkgmtime( t1 );

_t2 = _mkgmtime( t2 );

diff = difftime(_t2, _t1 );

printf( "相差 %.0f 分钟\n", diff / 60 );

}

扩展资料:

C语言中有两个相关的函数用来计算时间差,分别是:

time_t time( time_t *t)   与 clock_t clock(void)

头文件: time.h

计算的时间单位分别为: s   , ms

time_t 和 clock_t 是函数库time.h 中定义的用来保存时间的数据结构

返回值:

1、time  : 返回从公元1970年1月1号的UTC时间从0时0分0秒算起到现在所经过的秒数。如果参数 t 非空指针的话,返回的时间会保存在 t 所指向的内存。

2、clock:返回从“开启这个程序进程”到“程序中调用clock()函数”时之间的CPU时钟计时单元(clock tick)数。     1单元 = 1 ms。

所以我们可以根据具体情况需求,判断采用哪一个函数。

具体用法如下例子:

#include time.h

#include stdio.h

#include stdlib.h

int main()

{

time_t c_start, t_start, c_end, t_end;

c_start = clock();    //! 单位为ms

t_start = time(NULL);  //! 单位为s

system("pause");

c_end   = clock();

t_end = time(NULL);

//!difftime(time_t, time_t)返回两个time_t变量间的时间间隔,即时间差

printf("The pause used %f ms by clock()\n",difftime(c_end,c_start));

printf("The pause used %f s by time()\n",difftime(t_end,t_start));

system("pause");

return 0;

}

因此,要计算某一函数块的占用时间时,只需要在执行该函数块之前和执行完该函数块之后调用同一个时间计算函数。再调用函数difftime()计算两者的差,即可得到耗费时间。


分享名称:C语言求时间差函数,c语言计算日期差
转载源于:http://azwzsj.com/article/hsgojc.html