Тема: Разделить текст на строки. Вопрос по С++
Здравствуйте! Вопрос конечно не связан с ARX, но сам я как то доковырять не могу.
Есть вот такая функция, которая должна возвращать часть строки по запросу.
CString FStrtok (CString AddString, int NumberCall) { CString Str1, Str2, Str3; CString AEnter; int ANumber = 0; AEnter = AddString.Tokenize(L"\r\n",ANumber); int NumberStr; NumberStr = 0; while (AEnter != L"") { if (NumberStr == 0) Str1 = AEnter; if (NumberStr == 1) Str2 = AEnter; if (NumberStr == 2) Str3 = AEnter; AEnter = AddString.Tokenize(L"\r\n",ANumber); NumberStr ++; } if (NumberCall == 0) return Str1; if (NumberCall == 1) return Str2; if (NumberCall == 2) return Str3; else return L"Error!"; }
Т.е. если на вход попадает строка L"Один\r\nДва\r\nТри\r\n"
В Str1=L"Один", Str2=L"Два", Str3=L"Три" соответственно. Всё замечательно, пока входная строка не вида L"\r\nДва\r\nТри\r\n", тогда в переменных Str1=L"Два", Str2=L"Три", а надо Str1=L"", Str2=L"Два", Str3=L"Три".
Киньте в меня чем нибудь. Как такое получается?