MFC for 循环里面if 和 else问题

2025-03-30 04:55:54
推荐回答(2个)
回答(1):

	if (strYMDHM==strItemYMDHM)//CString直接比较就好了
{
m_lstDtf.SetItemState(i,LVIS_SELECTED,LVIS_SELECTED|LVIS_FOCUSED);
m_lstDtf.SetFocus();
m_lstDtf.EnsureVisible(i,FALSE);
}
else
{
//  CLanguageX *plan = &theApp.m_langx;
//  CString strText;
//  plan->GetString(666,strText);
//  MessageBox(strText.GetBuffer(),NULL,MB_OK);
AfxMessageBox(strYMDHM+_T(" ")+strItemYMDHM); //看看哪里不同
return;
}

回答(2):

你可以就strcmp()函数写一个messagebox返回值,看看返回的是什么值?然后就是返回你要对比的strYMDHM和strItemYMDHM两个值,对比一下看看哪里出了错。你的strYMDHM中间有个空格,但是在你的字符串左16位里面不知道有没有,你把strYMDHM里面的空格去掉试试。