Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Вопрос по PChar


Alexander ©   (2002-10-10 07:17:00) 

Делаю так:


S, D: PChar

GetMem(D, Length(S) + 1);
StrCopy(D, S);


но, когда S := nil, то вылетает ошибка и приходится делать присваивание так:


if Assigned(S) than
StrCopy(D, S)
else
StrCopy(D, "");


нельзя ли это делать как-то проще?

И ещё, если я присваиваю D новое значение, то надо делать так?:


ReallocMem(D, Length(S) + 1);
if Assigned(S) than
StrCopy(D, S)
else
StrCopy(D, "");


REA   (2002-10-10 10:37:00) [1]

SetString тоже полезная функция


Dimka Maslov   (2002-10-10 10:20:00) [2]

Работай со строками AnsiString, а при необходимости приводи их к типу PChar

var
S, D: AnsiString;
P: PChar;
begin
S:="asdfghj";
D:=S;
P:=PChar(D);
...

И забудь про GetMem и StrCopy



Наверх

Титульная страница Поиск, карта сайта Написать письмо