Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.16.47.14] |
|
Сообщ.
#1
,
|
|
|
Мне необходимо получить все строки в данном примере, т.е. вот так должно отображится:
String0 String1 String2 String3 Но у меня получается отобразить только последнюю запись - String3. Что неправильно? procedure TForm1.Button1Click(Sender: TObject); var i:Integer; s:String; begin for i := 0 to 3 do begin s := 'String' + IntToStr(i) + #0; s := s + s; end; messagebox(0, pchar(s),'',0); end; |
Сообщ.
#2
,
|
|
|
ты добавляеш нулевой символ. в типе PChar это обозначает конец строки. замени на симпол переноса \r\n (#13#10)
Добавлено Цитата navodri @ s := 'String' + IntToStr(i) + #0; s := s + s; Но также этот кусок вызывает интерес. ты сначала присваиваеш строке значение (затирая предидущее) а потом конкатенируешь саму с собой Добавлено наверное ты хотел написать s := s + 'String' + IntToStr(i) + #13#10; |
Сообщ.
#3
,
|
|
|
Спасибо за помощь!
|