![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
непонятки при интенсивной работе со строками [D7, WinXP]
John69 © (2006-09-27 14:07:00)Привет Всем!
Кто-нибудь в курсе почему иногда случается что под описанное ниже условие могут подходить строки длинной меньше 3, например слово 'at' и почему-то третий символ действительно = '/' при просмотре в отладчике, (хотя по идее длинна должна быть = 2).
var
Words: TStringList;
begin
Words:=TStringList.Create;
...
...
Repeat
Words.Delete(0);
Until
(Words[0][3]='/')and(Length(Words[0])=3);
end;
MBo (2006-09-27 14:17:00) [1]Логика работы неверная и опасная.
Нужно проверять сначала наличие строк в списке (Count > 0), после этого - длину строки, и только если она длиннее 2-х символов, тогда уже можно проверять 3-й символ.