Указател към масив от указатели в Pascal

Не знам как да получа достъп до съдържанието на масив от указатели чрез указател. Ето един пример:

Type
    PInteger = ^Integer;
    IntegerArrayP = array of PInteger;
    PIntegerArrayP = ^IntegerArray;

var
    variable: Integer;
    parrp: PIntegerArrayP;
    arrp: IntegerArrayP;
begin
    SetLength(arrp, 5);
    parrp := @arrp;
    For variable := Low(arrp) to High(arrp) do
    begin
        arrp[variable] := New(PInteger);
        (parrp^)[variable]^ := variable;
        WriteLn('parrp: ', arrp[variable]^);
    end;
end.

Според мен трябва да се направи така (ptabp^)[variable]^ := variable; Но предполагам, че греша.


person Tomasz Kasperczyk    schedule 06.12.2014    source източник


Отговори (1)


Ти си прав. Скобите може да са пропуснати.
Какъв компилатор на Pascal използвате? Правилно използване на рутина New:

 New(arrp[variable]) ;
 parrp^[variable]^ := variable;

P.S. Наистина ли имате нужда от тези типове указатели тук?

P.P.S. Сега виждам грешка: PIntegerArrayP = ^IntegerArrayP;

person MBo    schedule 06.12.2014
comment
Използвам безплатен паскал. Също така се опитах да го компилирам на онлайн компилатор. Вижте го тук: ideone.com/rSkhTQ - person Tomasz Kasperczyk; 06.12.2014
comment
Е, не ми трябват всички тези типове указатели. Просто тренирам. - person Tomasz Kasperczyk; 06.12.2014
comment
Случайно сте смесили общ тип и вашия собствен тип. Вижте допълнение - person MBo; 06.12.2014