Rozmiar rzeczywisty

0

Jak pobrać rzeczywisty rozmiar danych w rekordzie? Bo gdy zrobię tak:

type
 r=record
  a,b:string;
  i:byte;
 end;
var
tmp:r;
[...]
SetLength(tmp.a,255);
SetLength(tmp.b,255);
tmp.i:=255;
caption:=inttostr(sizeof(tmp))

to oczywiscie wyswietla sie jak zwykle 12.

0
type
r=record
  a,b:string[255];
  i:byte;
end;
var
tmp:r;
[...]
caption:=inttostr(sizeof(tmp))

Sizeof liczy raczej kompilator, wiec przy dynamicznych danych to nie przejdzie, mozesz tez recznie sprawdzac dlugosc lancuchow i dodac bajt.

1 użytkowników online, w tym zalogowanych: 0, gości: 1