c/c++求两个日期之间的间隔天数

本文提供了一段C/C++代码,用于计算两个日期之间的间隔天数。作者请求对其中的`day_distance_2`逻辑进行解释,并欢迎高手留言指教。
摘要由CSDN通过智能技术生成

就不废话了,直接上程序:

 ps:

day_distance_2中的逻辑哪位大神懂,请直接留言,感谢大笑

/**
参见msdn tm time_t
注意有效范围,里面的year不能太早,否则计算不准确
*/
int day_distance_1(int year1,int month1,int day1,int year2,int month2,int day2)
{
    struct tm tm1;
	tm1.tm_year = year1 - 1900;
	tm1.tm_mon = month1 - 1;
	tm1.tm_mday = day1;
	tm1.tm_hour = 0;
	tm1.tm_min = 0;
	tm1.tm_sec = 0;

	struct tm tm2;
	tm2.tm_year = year2 - 1900;
	tm2.tm_mon = month2 - 1;
	tm2.tm_mday = day2;
	tm2.tm_hour = 0;
	tm2.tm_min = 0;
	tm2.tm_sec = 0;

	time_t time1;
	time_t time2;
	time1 = mktime(&tm1);
	time2 = mktime(&tm2);
	double diff = difftime(time1,time2);
	return (int)(diff/(3600*24));
}
/**
这个方法的计算范围很大,但是不清楚里面的算法内容,杯具...
*/
int day_distance_2(int year1,int mo
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值