Hi,
I'm working with a C library that returns an array of strings. So that is type PPChar. I C library does the array allocation, but doesn't do the freeing of the array.
How am I supposed to free an array of PChar strings? I think I need to improve my iteration too, because I'm moving the pointer of wlst, so I probably need to make a backup of the original pointer before the iteration.
My code looks as follows:
---------------------------------
var
s: PChar;
wlst: PPChar;
i: integer;
n: integer;
begin
// Returns an array of PChar strings. i = number of elements in array
i := Hunspell_suggest(SpellPtr, wlst, s);
if i > 0 then
writeln(Format(' %d suggestions:', [i]));
for n := 1 to i do
begin
writeln(' ', UTF8Decode(wlst^));
Inc(wlst, SizeOf(Pointer));
end;
end;
---------------------------------Regards,
- Graeme -
