Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   PChar (http://forum.oszone.net/showthread.php?t=30443)

khvalera 21-06-2003 21:26 208662

Help!!!
Подскажите, что нужно, чтобы в Delphi код заработал?

var
 Data,: string;
 w:BOOL;
 Data1:PChar;  

Data:=Edit1.Text;
Data1:=PChar(Data);         <- ???
CopyFile('c:\WClient\Rep\'+Data1,'c:\Readln\',w);

Ругается Incompatible types: '<String>' and '<PChar>'

Как перевести String в PChar и наоборот?

Galosh 22-06-2003 00:39 208663

Попробуй StrToInt или atoi
Тобиш это для перевода в Int:
Код:

Data := Edit1.Text;
Data1:= StrToInt(Data);

А это в char:
Код:


Data := Edit1.Text;
Data1:= atoi(Data);

Вобщето это сишное. Но а вдруг?  
А вообще советую в справке порыться


shurikan 22-06-2003 03:53 208664

khvalera
Тип PChar в Delphi аналогичен строкам в C. В Pascal-е все литеральные строки по умолчанию имеют тип string, этот же тип имеет и свойство Text компонента TEdit.
Цитата:

var
Data,: string; <- запятая лишняя (опечатка?)
w:BOOL;
Data1:PChar; * <- выкинь

Data:=Edit1.Text;
Data1:=PChar(Data); * * * * <- ??? <- выкинь
CopyFile(PChar('c:\WClient\Rep\'+Data),PChar('c:\Readln\'),w);<- исправь
И не забудь проинициализировать логическую переменную w
:biggrin: :biggrin: :biggrin:

vasketsov 22-06-2003 13:58 208665

khvalera
Проверил на Delphi 5, 6, 7

S: String;
p: PChar;

p := PChar(s);

ошибок нет.

Вывод - необходимо обновить версию Delphi.

;)

Добавлено:

Переаод наоборот начиная с D5 корректен просто приведением типов

s := String(p);

khvalera 22-06-2003 18:12 208666

Благодарю за помощь, буду должен !!!


Время: 11:59.

Время: 11:59.
© OSzone.net 2001-