Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.25;
Скачать: CL | DM;

Вниз

Char**   Найти похожие ветки 

 
old_mole ©   (2002-11-14 10:04) [0]

Есть DLL, есть source, у одной из функций есть параметер такого типа. Как "конвертировать" это в Delphi?


 
Внук ©   (2002-11-14 10:33) [1]

Не очень понятен вопрос. Если это параметр функции, можно переделать в
... var MyPar:PChar ...


 
old_mole ©   (2002-11-14 10:54) [2]

В том то и дело, что PChar дельфийский соответствует Char* сишному. Получается, что Char**, это массив PChar. Для того, чтобы, описать этот массив требуется указать ему граница. Динамический массив функция не принимает.


 
Внук ©   (2002-11-14 11:11) [3]

Более точно Char** - это указатель на PChar, что и достигается применением var. Но в каждом конкретном случае возможны варианты, конечно. Если нужен массив строк, может, проще использовать array of string. Или array of pchar и процедуру SetLength.
Почему динамический ассив не принимает? Должна...


 
old_mole ©   (2002-11-14 11:45) [4]

Не понял по поводу var. Всегда думал, что это "передача по ссылке", т.е. после отработки функции(процедуры) изменения останутся в силе.


 
Skier ©   (2002-11-14 11:50) [5]

>old_mole
IMHO, Char** = PPChar, где PPChar = ^PChar


 
Dimka Maslov ©   (2002-11-14 11:52) [6]

var означает, что в стек будет помещено не значение параметра, а его адрес, чем и достигается возможность изменения значения. Если же var тебе не подходит, то
char** эквивалентно паскалевскому ^PChar.


 
old_mole ©   (2002-11-14 11:53) [7]

Спасибо!


 
Smithson ©   (2002-11-14 12:12) [8]

var pC: Pchar - это действительно передача по ссылке. И действительно, в языках программирования (и C, и Паскаль) ссылка и указатель - это разные понятия. Но в реализациях и С, и Паскаль ссылка и есть указатель. Поэтому описание функции void c_func(... char** ...) эквивалентно procedure c_func (... var pC: Pchar ...)



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

Текущий архив: 2002.11.25;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.013 c
14-82931
MsGuns
2002-11-05 02:15
2002.11.25
Вот сегодня я нажрусь !


14-82955
AlekseyK
2002-11-05 17:00
2002.11.25
Вопрос


14-82948
Феликс
2002-11-05 21:48
2002.11.25
Сайт, где можно скачать книги?


4-83061
Th
2002-10-09 17:22
2002.11.25
Не грузится dll, написанная в VC++ ;((


4-83042
kofman
2002-10-11 09:57
2002.11.25
Как сделать, что бы PopUpMenu не закрывалось сразу после выбора?