CString m_str1="123,789,654,339";
int count = m_str1.Replace(',', ' ');
if(count<=0)
{
printf("No data");
return;
}
int* num = new int[count];
int pos = m_str1.Find(' ');
int i = 0;
while(pos != -1)
{
CString field = m_str1.Left(pos);
num [i] = atoi(field.GetBuffer(0));
i++;
m_str1 = m_str1.Right(m_str1.GetLength() - pos - 1);
pos = m_str1.Find(' ');
}
// last node
if(m_str1.GetLength()>0)
{
num [i] = atoi(m_str1.GetBuffer(0));
}
// do something elase you want
//...
//...
delete num ;
追问非常感谢,高手啊,我查了好一会儿MSDN才看懂的,不过int* num = new int[count];这句好像有点小小的错误吧,应该是int* num = new int[count+1];
追答嘿,不错啊,这的确是个bug