CString str = "C:\ D:\ E:\ F:\ G:\ H:\ I:\ "int m_pos = str.Find(':',n); //其中n为整数我想问的是Find 函数的第二个参数的用法。
我试了一下,感觉n和m_pos之间没有规律。
比如当n=1时,m_pos = 1;
n=2 m_pos = 5;
n=3 m_pos = 5;
直到 n=6 m_pos = 9;
之后的我就不一一列举了,总之感觉n和m_pos没有什么联系。
哪位大虾能给我好好讲下Find函数的第二个参数的用法。谢谢了!
我试了一下,感觉n和m_pos之间没有规律。
比如当n=1时,m_pos = 1;
n=2 m_pos = 5;
n=3 m_pos = 5;
直到 n=6 m_pos = 9;
之后的我就不一一列举了,总之感觉n和m_pos没有什么联系。
哪位大虾能给我好好讲下Find函数的第二个参数的用法。谢谢了!
这个参数的含义就是从哪个位置开始找,如果没有这个参数,则只能查找出第一次出现的位置,有了这个参数,可以利用循环,每次从上次找到的位置之后开始查找,这样就可以查找出整个字符串中出现目标字符的各个位置。
一般字符串都是从零位置开始的.
int find_offset = 0; //起始位置
while(find_offset < str.GetLength()) //判断超界
{
find_offset = str.Find(":",find_offset); //搜索字符串
if(find_offset == -1) //未搜索到退出
break;
printf("%d\r\n",find_offset); //找到处理
find_offset++; //指向下一个位置
}