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

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

Получение адреса параметра функции [D7, WinXP]


Vladimir88 ©   (2005-10-14 16:24:00) 

$4300..$4700:Result:=GetLenCot100(Adress,numb_ti100_1,Cot100_1);

function TConverter.GetLenCot100(Adress: Word; NumbTi100:Byte; const Cot100: TCot100): Word;
var
i,j:Word;
begin
i:={ $4300}Word(Pointer(@Cot100));

адрес @Cot100_1 и @Cot100 получаются разные, как мне в функции получить правильный адрес на параметр, передаваемый в функцию.


Digitman   (2005-10-14 17:14:00) [1]


> Vladimir88   (14.10.05 17:09) [8]


какого ж .. тогда ты передаешь параметр как const ?

ну и передавай тогда его как var или out !

тогда адрес меторазмещения в памяти фактически переданного параметра (какого бы типа он ни был) в теле вызванной п/программы м.б. получен в том самом виде : @имя_формального_параметра_п/программы


Vladimir88   (2005-10-14 17:09:00) [2]

Без адресов не обойтись, у меня как раз такая ситуация что мне нужны не значения массива, а его адресс, Cot100[0] выдаёт то же самое


TUser   (2005-10-14 17:02:00) [3]

Узнавай адрес первого элемента Cot100[0]. А адрес самого массива - это бессмыслица.

И наверняка можно вообще без адресов обойтись, если написать вместо const - var


Digitman   (2005-10-14 17:00:00) [4]

бред какой-то ...


Vladimir88   (2005-10-14 16:56:00) [5]

TCot100 это массив


han_malign   (2005-10-14 16:51:00) [6]


> адрес @Cot100_1 и @Cot100 получаются разные

- TCot100 - перечислимый небось(cardinal) - дык они всегда по значению передаются(Delphi же не должен ругаться на GetLenCot100(Adress,numb_ti100_1, 17);)...
убери : TCot100- и будет тебе щастье(нетипизированная константа передается по адресу)

З.Ы. А с чего ты взял, что адрес это Word?


Amoeba   (2005-10-14 16:44:00) [7]


> адрес @Cot100_1 и @Cot100 получаются разные


А что, они разве обязаны быть одинаковыми?


Vladimir88   (2005-10-14 16:36:00) [8]

У меня есть структура типа запись, мне надо выдрать кусок памяти где содержится данное поле, и несколько следующих, в общем очень долго объяснять зачем, в общем для программирования устройств


Amoeba   (2005-10-14 16:31:00) [9]

А для чего это нужно?


Наверх

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