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

Вниз

запись в память по смещению   Найти похожие ветки 

 
fford   (2010-01-20 10:57) [0]

Здравствуйте!
мне надо в функцию передать параметром указатель на массив

type
  pInt64=^Int64;

procedure foo(size:Integer; data:pInt64);
....


подскажите как его сформировать?
я делаю примерно так
var p:pInt64;
    i:Integer;
begin
GetMem(p,10*SizeOf(Int64));
for i:=0 to 9 do
  p[i]:=0;
foo(10,p);
...
End;


но компилятор ругается на строку p[i]:=0
Array type required
если сделать как (p+i*sizeof(Int64))^:=0;
то ругается
Operator not applicable to this operand type

подскажите как его заполнить то ?


 
Медвежонок Пятачок ©   (2010-01-20 11:07) [1]

p^
Inc(p)


 
Сергей М. ©   (2010-01-20 11:11) [2]

Чем тебе тип array of Int64 не угодил ?


 
Sha ©   (2010-01-20 11:12) [3]

или
type
 Int64Array = array [0..256*1024*1024 - 2] of Int64;
 pInt64Array = ^Int64Array;
var
 p: pInt64Array;


 
fford   (2010-01-20 11:23) [4]


> Чем тебе тип array of Int64 не угодил ?

функция из библиотеки сторонней
и там вот так передается параметр
объявлен тип
TTUInt64 = Int64;
PTUInt64 = ^TUInt64;

и в процедуру так и передается
массив как переменная типа PTUInt64


 
fford   (2010-01-20 11:35) [5]

я сделал так
var
 p:Array[0..9] of TTUInt64;
begin
....
for i:=0 to 9 do
  p[i]:=0;

foo(9,PTUInt64(addr(p[0])))


 
Anatoly Podgoretsky ©   (2010-01-20 11:39) [6]

> fford  (20.01.2010 10:57:00)  [0]

Приведи сначала к числу, числа можно складывать, а потом к указателю, указатели нельзя складывать, можно складывать только указатели на CHAR


 
Sha ©   (2010-01-20 11:40) [7]

Спросил одно, а надо другое.


 
fford   (2010-01-20 15:13) [8]


> Спросил одно, а надо другое.

вроде именно это и спрашивал :)
может ты не так понял



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

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

Наверх




Память: 0.48 MB
Время: 0.012 c
6-1214832907
Галинка
2008-06-30 17:35
2010.03.21
Sckets: почему так получается


15-1262156174
12
2009-12-30 09:56
2010.03.21
Можно ли как-то управлять кэшем mssql server?


2-1263563053
Pavel
2010-01-15 16:44
2010.03.21
Компонент IdHTTPServer и домашщний каталог


15-1262283412
Чечако
2009-12-31 21:16
2010.03.21
Как программировать в Делфи?


1-1241176890
MM_ASH
2009-05-01 15:21
2010.03.21
Интеграция с Delphi IDE