Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.08.12;
Скачать: CL | DM;

Вниз

Посимвольное присваивание Строк   Найти похожие ветки 

 
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;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.01 c
1-35303
Kurt
2002-07-29 13:35
2002.08.12
Как искать с помощью FindDialog текст только вверх??


14-35429
Л.Ге
2002-07-15 11:25
2002.08.12
Вывод в DBGrid c произвольной строки (D6, IB6)


1-35325
Yong
2002-07-29 10:07
2002.08.12
WorkBooks.Close


4-35529
stainer
2002-06-04 02:32
2002.08.12
проблема с popupmenu


1-35251
V.Turecky
2002-07-30 16:11
2002.08.12
ТCheckListBox