关于CTimeSpan使用有关问题,请求各位支招
关于CTimeSpan使用问题,请求各位支招
我便写了一段代码,相对获取的时间增加30分钟,可是当我用FormatGmt整理并输出显示的时候却连小时也被意外的盖了,并且不着边际,代码如下:
int nYear,nMonth,nDate,nHour,nMin,nSec;
sscanf(arrivetime, "%d-%d-%d %d:%d:%d ",&nYear,&nMonth,&nDate,&nHour,&nMin,&nSec);
CTime t(nYear,nMonth,nDate,nHour,nMin,nSec);
t=t+CTimeSpan(0,0,30,0);
arrivetime=t.FormatGmt( "%Y-%m-%d %H:%M:%S ");
各位帮帮忙,出现了什么问题?谢谢!
------解决方案--------------------
CTime t1 = CTime::GetCurrentTime();
int nYear = t1.GetYear();
int nMonth = t1.GetMonth();
int nDate = t1.GetDay();
int nHour = t1.GetHour();
int nMin = t1.GetMinute();
int nSec = t1.GetSecond();
CString arrivetime;
sscanf(arrivetime, "%d-%d-%d %d:%d:%d ",&nYear,&nMonth,&nDate,&nHour,&nMin,&nSec);
CTime t(nYear,nMonth,nDate,nHour,nMin,nSec);
t=t+CTimeSpan(0,0,30,0);
arrivetime=t.FormatGmt( "%Y-%m-%d %H:%M:%S ");
AfxMessageBox(arrivetime);
------解决方案--------------------
主要是变量没有初始化的问题,会初始化为一些没有用的东西。
------解决方案--------------------
FormatGmt并且这个是转化为世纪时的,和北京时间不一样,所以会出现时也不一样的样子。
------解决方案--------------------
你的
int nYear,nMonth,nDate,nHour,nMin,nSec;
这几个变量没有初始化,应该给它们赋初始值,如
int nYear = 0,nMonth = 0,nDate = 0,nHour = 0,nMin = 0,nSec = 0;
我便写了一段代码,相对获取的时间增加30分钟,可是当我用FormatGmt整理并输出显示的时候却连小时也被意外的盖了,并且不着边际,代码如下:
int nYear,nMonth,nDate,nHour,nMin,nSec;
sscanf(arrivetime, "%d-%d-%d %d:%d:%d ",&nYear,&nMonth,&nDate,&nHour,&nMin,&nSec);
CTime t(nYear,nMonth,nDate,nHour,nMin,nSec);
t=t+CTimeSpan(0,0,30,0);
arrivetime=t.FormatGmt( "%Y-%m-%d %H:%M:%S ");
各位帮帮忙,出现了什么问题?谢谢!
------解决方案--------------------
CTime t1 = CTime::GetCurrentTime();
int nYear = t1.GetYear();
int nMonth = t1.GetMonth();
int nDate = t1.GetDay();
int nHour = t1.GetHour();
int nMin = t1.GetMinute();
int nSec = t1.GetSecond();
CString arrivetime;
sscanf(arrivetime, "%d-%d-%d %d:%d:%d ",&nYear,&nMonth,&nDate,&nHour,&nMin,&nSec);
CTime t(nYear,nMonth,nDate,nHour,nMin,nSec);
t=t+CTimeSpan(0,0,30,0);
arrivetime=t.FormatGmt( "%Y-%m-%d %H:%M:%S ");
AfxMessageBox(arrivetime);
------解决方案--------------------
主要是变量没有初始化的问题,会初始化为一些没有用的东西。
------解决方案--------------------
FormatGmt并且这个是转化为世纪时的,和北京时间不一样,所以会出现时也不一样的样子。
------解决方案--------------------
你的
int nYear,nMonth,nDate,nHour,nMin,nSec;
这几个变量没有初始化,应该给它们赋初始值,如
int nYear = 0,nMonth = 0,nDate = 0,nHour = 0,nMin = 0,nSec = 0;