Ошибка при удаление символов в цикле

Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду

Ответить
itwork
Сообщения: 79
Зарегистрирован: 28 дек 2006, 15:20

Код: Выделить всё

 
           Repeat
              tmp:= s2[1];
              Delete(s2,1,1);
              tmp1:= s2[1];
            Until (tmp1<>tmp);
Delphi 7;

ЛЮДИ Кто знает, почему s2[1] присваивается к tmp, но не присваивается к tmp1 и выдает ошибку Ж(
Аватара пользователя
Duncon
Сообщения: 2085
Зарегистрирован: 10 окт 2004, 14:11
Откуда: Питер
Контактная информация:

Ну судя по всему это у тебя строки длинной 1
при удалении ты удаляешь всю эту строку и присваивать уже нечего..
itwork
Сообщения: 79
Зарегистрирован: 28 дек 2006, 15:20

Неа строка вот такая 'sdfsdff', ивыдает ошибку сразу на первом шаге!!!
Поэтому итерестно что ет за баГ или как такой момент грамотно написать.
:confused:
Аватара пользователя
Duncon
Сообщения: 2085
Зарегистрирован: 10 окт 2004, 14:11
Откуда: Питер
Контактная информация:

Ну и посчитай сколько у тебя элементов в 'sdfsdff', и влезут ли они в чтроку такого типа '1' (s2[1] ;)
itwork
Сообщения: 79
Зарегистрирован: 28 дек 2006, 15:20

Duncon писал(а):Ну и посчитай сколько у тебя элементов в 'sdfsdff', и влезут ли они в чтроку такого типа '1' (s2[1])
Для чего строке влезать в s2[1] я же к s2[1] ничего неприсваиваю !
извините но я всеравно нипонял в чем дело, помогите пожалуйста!
Аватара пользователя
Duncon
Сообщения: 2085
Зарегистрирован: 10 окт 2004, 14:11
Откуда: Питер
Контактная информация:

Посли этого действия Delete(s2,1,1); s2 будет пустой.
itwork
Сообщения: 79
Зарегистрирован: 28 дек 2006, 15:20

аааааа, точн :D SPS
Ответить