C++时间显示(自动增加系统时间问题)

做图书馆管理系统中碰到这样一个问题,就是归还日期在现有基础时间上增加一个月(即30天),在使用#include<windows.h>#include<time.h>tim... 做图书馆管理系统中碰到这样一个问题,就是归还日期在现有基础时间上增加一个月(即30天),在使用
#include <windows.h>
#include <time.h>
time_t t;
time(&t);
cout << "启动系统时间为: " << ctime(&t) <<endl;
这几行代码只能显示当前系统时间,如果要加30天,应该怎样实现,请各位支支招!谢了!
(不是很需要提示你输入时间的那种,那种代码我也会写。。。)
展开
 我来答
a6_gesture
2013-06-23 · TA获得超过108个赞
知道小有建树答主
回答量:114
采纳率:0%
帮助的人:90.7万
展开全部
增加一个月不止是三十天,有的是29,有的是30,有的是31,从才开学学做程序最好就要严谨.用下面的struct tm 这个结构体。先将time_t转换为这个结构体,再将这个结构体的月份加1,如果这个结构体的月份为12就将年份加1,月份置1就可以了
time_t t1;
time_t rawtime;
struct tm * target_time;

time ( &rawtime );
target_time = localtime ( &rawtime ); // 其它参数
target_time->tm_year = 2013 - 1900;
target_time->tm_mon = 8 - 1; // 月 - 1
target_time->tm_mday = 20 ; // 日
target_time->tm_hour = 0 ; // 时
target_time->tm_min = 0 ; // 分
target_time->tm_sec = 0 ; // 秒
t1 = mktime (target_time);
tq0cdxa
推荐于2016-09-08 · TA获得超过123个赞
知道小有建树答主
回答量:210
采纳率:0%
帮助的人:209万
展开全部
#include <windows.h>
#include <time.h>
time_t t;
time(&t);
t =t + 2592000;//不是很科学...3600秒*24小时*30天=2592000秒
cout << "启动系统时间为: " << ctime(&t) <<endl;
不对就不知道了
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友6dc5d8b
2013-06-23 · TA获得超过721个赞
知道小有建树答主
回答量:390
采纳率:100%
帮助的人:274万
展开全部
楼主可以使用SYSTEMTIME这个结构体
SYSTEMTIME time;
GetSystemTime(&time);

然后把获取到的时间通过SystemTimeToFileTime函数转换成文件时间
然后对文件时间进行加减操作
操作完了再用FileTimeToSystemTime函数把文件时间转换成系统时间
就ok了
参考资料:

http://support.microsoft.com/kb/188768
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式