求高手能帮忙指点一下关于CString字符串的分割函数
我在编写的一个程序中,有个问题就是按照逗号分割出来的字符串比较时有问题;比如说如下定义:
CString str=_T("A,X1,1.359,1")//为要分割的字符串
CString s=_T("x1");
而将分割后的字符串放在一个动态数组中
CString* strTmp=new CString[MAX];
比如说将分割的出来的"x1"放在strTmp[1]里
可是将s与strTmp[1]进行比较时就有问题了
我做了个小测试:
bool flag=s==strTmp[1];
flag总是显示FALSE;
求高手指点呀!!!!!
本人的字符串分割函数代码如下:
CString * SplitString(CString str,char split,int &iSubStrs)
{
int iPos=0;
iSubStrs=1;
for(iPos=str.Find(split);iPos!=-1;iPos=str.Find(split,iPos+1))
{
iSubStrs++;
}
CString *pstrString=new CString[iSubStrs];
int iTemp=0;
for(int i=0;i<(iSubStrs-1);i++)
{
iPos=str.Find(split,iPos+1);
pstrString[i]=str.Mid(iTemp,iPos-iTemp);
iTemp=iPos+1;
}
pstrString[(iSubStrs-1)]=str.Mid(iTemp,str.GetLength()-iTemp);
return pstrString;
}