Вниз
Скачать: CL | DM;

Вопрос по PChar   Найти похожие ветки 

 
Alexander ©   (2002-10-10 07:17) [0]

Делаю так:


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, "");


 
Dimka Maslov ©   (2002-10-10 10:20) [1]

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

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

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




 
REA ©   (2002-10-10 10:37) [2]

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



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
3-69108
Бульбаш
2002-10-22 13:07
2002.11.21
Может не в тему, но все же...


14-69496
Judith
2002-11-01 18:23
2002.11.21
С Halloween!


1-69358
Guest2
2002-11-12 19:45
2002.11.21
Как проверить завершение процесса из своей проги?


1-69340
Новенький в Делфи
2002-11-12 19:52
2002.11.21
StringList1.LoadFromStream(MemoryStream1) - проблема


14-69487
blackweber
2002-11-05 00:50
2002.11.21
GUID




   Наверх