Quote Originally Posted by Alimonster
Number 1: the pointer is pointed to the first element of the 5-element array. It's then inc'd on 3 places, meaning it goes to ptest[3] instead of ptest[0]. Ptest[3] = 3

Number 2: the pointer is dec'd four positions. This moves it before the first actual element, onto the internal array length int. This you might remember if you ever used Delphi 1 and its strings (my_string[0] there being the length of the array, later replaced with Length and SetLength, I believe, in Delphi 2).
I had thought that Inc(pInt, 3) would increase the pointer by 3 bytes, and that Dec(pInt, 4) would decrease it by 4 bytes...

I'm not quite sure how I got those minuses for 3 and 4 :?