日期加减-c++如何实现时间的加减操作?

问题描述

c++如何实现时间的加减操作?

c++如何实现时间的加减操作,比如有一个时间2015-03-30 23:20:20,我想减去一个月,加上2小时,如何实现??望高手赐教,代码越简洁越好!

解决方案

分别单独处理时间和日期
如果时间处理时,发现要对日期进行变化,则调用日期变化的功能。日期变化的功能,其实也不难、就是麻烦。
需要判断是否是闰年?然后按 1、3、5、7、8、10、12 和 除了2月之外的其它月进行处理。

解决方案二:

可以自己写一个时间类,然后重载加减运算符

解决方案三:

CTime方法,或者直接用CTimeSpan就可以实现吧

解决方案四:

用Boost库吧,支持Day的加减,你只要确认自己的一个月是多少天就可以了。

解决方案五:

Boost C++ Libraries

解决方案六:

自己写一个,每月日期都是固定的

解决方案七:

Linux也要运行,那就自己写吧。

解决方案八:

建议定义时间类,重载加减运算符,可以满足你的要求

解决方案九:

我只知道windows下可以用GetLocalTime来获取一个时间的结构体,然后对结构体中的月字段直接加减就好了。

解决方案十:

用Boost库吧,支持Day的加减,你只要确认自己的一个月是多少天就可以了

时间: 2025-01-21 11:53:10

日期加减-c++如何实现时间的加减操作?的相关文章

asp.net 获取当前时间做加减操作

问题描述 asp.net 获取当前时间做加减操作 asp.net 获取当前时间做加减操作 DateTime.Now.ToString("yyyy-MM-dd"); 获取当前时间在这基础上减7天 或者一个月 或者 一季 解决方案 AddDays(-7) AddMonth(-1) 季度这个没有,可以这么写 AddMonth(1 - DateTime.Now.Month % 3) 解决方案二: ASP.NET时间操作asp.net获取当前时间asp.net获取当前时间

请问大家在c#中怎么进行时间的加减呀 我的时间精确到了秒的下一位如1:55.72.......怎么把两个这样的数进行加减呀?

问题描述 请问大家在c#中怎么进行时间的加减呀我的时间精确到了秒的下一位如1:55.72.......怎么把两个这样的数进行加减呀? 解决方案 解决方案二:TimeSpanspan=newDateTime(2005,2,11,22,22,44,555)-newDateTime(2004,9,1,1,1,1,1);intint_day=span.Days;intint_hour=span.Hours;intint_min=span.Minutes;intint_sec=span.Seconds;i

date-Java 从多个日期中找出最大最小时间

问题描述 Java 从多个日期中找出最大最小时间 50C 1 a 2013-04-011 a 2013-04-081 a 2013-04-282 a 2013-04-082 a 2013-11-11求代码,实现以前两列为唯一,比较多个日期从中找出最早最晚时间,并统计出现次数1 a 2013-04-01 2013-04-28 32 a 2013-04-08 2013-11-11 2 解决方案 lz我不知道你的前两列唯一是什么意思实现的是对日期的排序统计具体的lz你在你的需求你基础上改吧 impor

jsp 时间相减-jsp中两个string类型的时间怎么相减,回答的好的提高悬赏

问题描述 jsp中两个string类型的时间怎么相减,回答的好的提高悬赏 java.util.Date endDate3 = new java.util.Date(iYear,iMonth,iDate-iDay+7+ (iNext*7));//根据系统时间获取的时间 java.text.SimpleDateFormat formatter = new java.text.SimpleDateFormat("yyyy-MM-dd"); String sEndDate3 = formatt

ontouchevent-在onTouchEvent()时间里面加了一个scale 缩放动画效果,效果和预期不同

问题描述 在onTouchEvent()时间里面加了一个scale 缩放动画效果,效果和预期不同 //设置动画属性 animation = new ScaleAnimation(1.0f, 0.5f, 1.0f, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f,Animation.RELATIVE_TO_SELF, 0.5f); animation.setDuration(500);// 设置动画持续时间 animation.setRepeatCount(1);//

javascript-diiv点击时间数据加载中显示加载中图片加载完还原

问题描述 diiv点击时间数据加载中显示加载中图片加载完还原 <div class="lead-more" id="lead-more" style="margin-top: 120px;"><a href="javascript:;">查看更多>></a></div> $(document).ready(function(){ $("#lead-more&

关于数据库中日期时间型字段的操作问题

问题描述 我数据库用的是sQL2005,字段类型没有时期型,只有日期时间型,在操作时,这就产生了一个问题,我是以这个日期字段为主关键字的,可我在添加时,要先判断主键的唯一性,form表单用添加日期用的是控制dateTimePicker,这样如何与数据库中的字段比较,请指教.库中字段格式为2014-9-300:00:00 解决方案 解决方案二:至少可以dataTimePicker.Value.ToString("yyyy-MM-ddHH:mm:ss").Equals(sqlDataRea

prisma加载不出怎么办 Prisma一直加载中怎么办

prisma加载不出怎么办,解决办法 由于prisma加载滤镜时间过长,应用加载不出的情况,这个小编觉得是网络原因或者服务器原因,首先这款prisma app必须上网,其二因为prisma刚上安卓平台用户都去安装使用prisma,导致prisma服务器处理缓存所以出现加载不了. Prisma一直加载中怎么办? 前面介绍了prisma加载是因为安卓平台上线或自己网络缓存原因导致了,只要换个时间段即可. Prisma滤镜加载中如何解决? 加载一个滤镜的时候把所有其他的滤镜都点了,回头都加载好了. 所

JavaScript循环加载模块的方法及模块加载技术思考

"循环加载"(circular dependency)指的是,a脚本的执行依赖b脚本,而b脚本的执行又依赖a脚本.     // a.js    var b = require('b');     // b.js    var a = require('a'); 通常,"循环加载"表示存在强耦合,如果处理不好,还可能导致递归加载,使得程序无法执行,因此应该避免出现. 但是实际上,这是很难避免的,尤其是依赖关系复杂的大项目,很容易出现a依赖b,b依赖c,c又依赖a这样