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

Untyped parameters   Найти похожие ветки 

 
TCrash ©   (2003-06-09 19:55) [0]

Подскажите, плс, Каким образом передаются в процедуру нетипизированные параметры.
Например, имеется :

procedure aaaa(const x);
var p: pointer;
begin
........
getmem(p,Sizeof(x));
p^:=x; // Здесь ругается на несовместимость типов
........
end;

Что здесь неправильно?


 
clickmaker ©   (2003-06-09 19:57) [1]

p:=@x;


 
clickmaker ©   (2003-06-09 19:59) [2]

Сорри, не заметил getmem... Тогда так
CopyMemory(p, @x, SizeOf(x));


 
TCrash ©   (2003-06-09 20:01) [3]

Простите за тупой вопрос, но как такая запись трактуется ?

ЗЫ: мне нужно по заданному указателю поместить передаваемые данные. Никак не присвоить указателю адрес данных.


 
clickmaker ©   (2003-06-09 20:04) [4]

p^ можно указывать только в правой части, например:

procedure aaaa(var x: integer);
var p: pointer;
begin
CopyMemory(p, @SomeData, sizeof(integer));
x := integer(p^);
end;


 
TCrash ©   (2003-06-09 20:08) [5]

Простите за повторный ворос, похоже вы на него уже ответили
=> clickmaker © (09.06.03 19:59)

Tsank you.


 
TCrash ©   (2003-06-09 20:11) [6]

кстати, не могу пока проверить на практике, а как определиться SizeOf(X), если размер Х заранее неизвестен.



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

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



Память: 0.46 MB
Время: 0.017 c
14-84597
Vlad Oshin
2003-06-09 09:17
2003.06.26
:) (=============чтоб попасть было легче..:)


3-83912
Денис Курьин
2003-06-02 14:27
2003.06.26
Drag&Drop деревьев


1-84342
Merfi
2003-06-16 10:49
2003.06.26
Завязка с разрешением


1-84401
Графика
2003-06-09 10:02
2003.06.26
Как при скролинге методом ScrollBy убрать мерцание?


6-84511
Gandalv
2003-04-19 18:12
2003.06.26
TWebBrowser




   Наверх