<!--CodeS-->
type
TARGET = ^I_TARGET;
I_TARGET = packed record
Name : array[0..255] of PCHAR;
Address : array[0..255] of PCHAR;
end;
var
Nam, Addr : String;
begin
Nam := '1234567890';
Addr := 'ABCDEFGHIJ';
end
<!--CodeE-->
Name 변수에 Nam 문자열을 넣으려고 합니다.
포인터 변수를 사용했습니다.
즉
Name = '1' '2' '3' '4' '5' '6' '7' '8' '9' '0' '' '' '' '' ......
이렇게 256개의 배열요소에 각각 데이터를 넣으려고 합니다.
var
tmpTarget : I_TARGET;
Nam, Addr : String;
begin
for i:=0 to 10 do begin
tmpTarget.Name[i] := @Nam[i];
end;
end;
제대로 들어 갔나는 tmpTarget.name[i]를 직접 출력해보시면 되겠죠.
^^
그런데 위 질문에서 의문인 것은 Name에 각각 하나씩 들어 가는게 아니고. 결국에 어드레스 값이 들어가게 되므로 출력을 해보시면 죽 다 나오게 될 겁니다.