![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблема при создании директории на Pascal
Впервые © (2008-12-08 13:50:00)Здравствуйте. Я пишу на Паскале програмку. Дошёл до места где нужно создавать директорию. Так выглядит код программы из хелпа Паскаля:
uses WinDos;
var Dir : PChar;
begin
Dir :='c:\mydir';
CreateDir (Dir);
end.
Я пишу:
uses WinDos
var Dir : String;
begin
Dir :='c:\mydir';
CreateDir (Dir); //тут возникает ошибка 26. Type mismatch
end.
Притом если я приравниваю
uses WinDos
var
Dir : PChar;
s : string;
begin
Dir :='c:\mydir';
s :=Dir; //тут возникает ошибка 26. Type mismatch
CreateDir (Dir);
end.
Можно ли как-либо приравнять тип PChar к string?
Спасибо
Palladin (2008-12-09 08:10:00) [1]Поэтому в Паскале пользуются процедурой MkDir
Anatoly Podgoretsky (2008-12-08 19:44:00) [2]Надо учесть один маленький, но важный факт - string в Паскаль, не тоже самое, что в Дельфи.
{RASkov} (2008-12-08 19:28:00) [3]> [5] Впервые (08.12.08 19:06)
Зачем тебе все эти переменные. Тебе можно без них или достаточно одной любого типа, так как PChar и String практически одинаковые...
Везде где используется String, можно использовать PChar. А где используется PChar то String преобразовывается без проблем одноименной функцией PChar()....
codemaster (2008-12-08 19:24:00) [4]Ну если тип у тебя Dir : PCHAR зачем ты ещё раз её возводишь в PCHAR??
Create(Dir);
Впервые (2008-12-08 19:06:00) [5]Это опять я. Неполучается никак у меня :-((
uses Crt, WinDos;
var
Dir : PChar;
st : string;
begin
ClrScr;
st :='c:\dir';
Dir :=PChar(st);
CreateDir(PChar (Dir));
end.
Мне просто нужно в CreateDir подставить строку. Непреобразовывается тип. Чего то я явно незнаю :-((
Anatoly Podgoretsky (2008-12-08 15:11:00) [6]> Впервые (08.12.2008 13:50:00) [0]
А зачем ты это делаешь? Переменная S же не используется?
Khim (2008-12-08 14:07:00) [7]всегда пожалуста
Впервые (2008-12-08 14:05:00) [8]Ага :-) Работает. Спасибо.
Khim (2008-12-08 13:56:00) [9]CreateDir (PChar (mydir)); не работает?