读书人

为什么小弟我的char inBuf[80]转化成C

发布时间: 2012-02-29 16:44:11 作者: rapoo

为什么我的char inBuf[80]转化成CTime类型的时候就报错的?
CTime t=CTime::GetCurrentTime();//获取系统时间
int iHour=t.GetHour();
int iMinute=t.GetMinute();
int iSecond=t.GetSecond();

// SDEVICETIME istime;
// memcpy(istime,inBuf[80]);

CTime tmr1,tmr2;
int uhour,uminute,usecond;
char *str=(char*)inBuf[80];
sscanf(str,"%d:%d:%d",&uhour,&uminute,&usecond);//分切
tmr1=CTime(uhour,uminute,usecond,0,0,0); //构造

// Cstring strTemp(inBuf);
// strTemp = tmr1.Format("%Y%m%d %H%H%S")

uhour = tmr1.GetHour();
uminute = tmr1.GetMinute();
usecond = tmr1.GetSecond();

//tmr1=a;
tmr2=t;
CTimeSpan tmr3 = tmr2 - tmr1;
LONGLONG longsum = tmr3.GetTotalSeconds();
if (longsum < 1 && longsum>-1)
{
//如果两个时间的秒数相差1秒之内...
g_pMainDlg->ChangeDeviceTime(IsAutoSetTime);
AfxMessageBox("校对成功");
}
else
{
AfxMessageBox("校对失败");
}


[解决办法]
tmr1=CTime(uhour,uminute,usecond,0,0,0); //构造
不能这么写吧
CTime tmr1(uhour,uminute,usecond,0,0,0),tmr2;
把位置换一个地方吧

读书人网 >C++

热点推荐