Форум: "Основная";
Текущий архив: 2002.08.12;
Скачать: [xml.tar.bz2];
ВнизПосимвольное присваивание Строк Найти похожие ветки
← →
Kran (2002-07-31 11:15) [0]Ребята обьясните что неправильно делаю.В Object Pascal Reference
написано, да и в обычном паскале такое всегда было: Со строками можно работать как и с массивами символов.Постоянно выдаёт ошибку
var
s1,s2 :String;
i:byte;
begin
s1:="";
s2:="Qaz ";
for i:=1 to length(s1) do
s1[i]:=s2[i];
ShowMessage(s1);
end;
← →
Skier (2002-07-31 11:17) [1]>Kran
У тебя s1 пустая строка !
← →
Kran (2002-07-31 11:19) [2]Ну я и хочу чтоб она стала не пустой а такой же как и s2
← →
Alx2 (2002-07-31 11:22) [3]ну тогда установи для нее подходящую длину и вперед!
← →
Skier (2002-07-31 11:23) [4]>Kran
var
s1,s2 :String;
i:byte;
begin
s1:="";
s2:="Qaz ";
SetLength(s1, length(s2));
for i:=1 to length( s2) do
s1[i]:=s2[i];
ShowMessage(s1);
end;
← →
MBo (2002-07-31 11:24) [5]>такой же как и s2
s1:=s2;
← →
Внук (2002-07-31 11:24) [6]Я полагаю, будет все в порядке, если использовать тип ShortString или соответствующий ключ компилятора, иначе см. Alx2 © (31.07.02 11:22)
← →
Kran (2002-07-31 11:28) [7]За Setlength спасибо забыл что так надо делать, а s1:=s2 не прокатит тк мне нужно получить допустим не все символы а только до символа разделителя.
← →
kull (2002-07-31 11:31) [8]
> Kran © (31.07.02 11:28)
А Copy() и Pos() не проще?
← →
Anatoly Podgoretsky (2002-07-31 11:35) [9]Kran © (31.07.02 11:15)
Ни в одном из диалектов Паскаля такого не было. Всегда требовалось или явное и неявное указание длины и нельзя писать за пределы этой длины.
Внук © (31.07.02 11:24)
Аналогично, требуется указание длины, по умолчанию 255, но при таком варианте обращение, требуется ручнка корректировка актуальной длины строки.
← →
Внук (2002-07-31 11:45) [10]>>Anatoly Podgoretsky © (31.07.02 11:35)
Ага, забыл :)
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.08.12;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.006 c