[請益] Delphi 指標

看板Programming作者 (zha0)時間18年前 (2008/02/15 00:57), 編輯推噓0(001)
留言1則, 1人參與, 最新討論串1/1
pa, pb: pointer; i,j: integer; begin i:=2; pa := @i; // 取 i 位址給 pa pb := pa; // 把 pa 給 pb pb := @j; // pb 設成 j 位址 j := integer(pa^); // i 放入 j integer(pa^) := 20; // 20 放入 i integer(pb^) := integer(pa^); // i 放入 j 問題來了,如果 pa 今天指向 #$402000 的位址, 那我要以 pa 當 base address 要移動 20 個 bytes 要怎麼移 j := integer( pointer(pa)+Pointer(20) ); ------------ ex: 要寫下面的種東西, 在 c 裡面我會用,但在 delphi 裡面,還不知怎麼弄 XD {CopyMemory(Pointer(@Buffer),Pointer(LongInt(FMemory)+FUseableStartPos+FPosit\ ion),Result);} Move(pView^, ImgDosHeader, sizeof(IMAGE_DOS_HEADER)); Move(pView^ + Pointer(ImgDosHeader._lfanew)^, ImgNtHeaders, sizeof(IMAGE_NT_HEADERS)); -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 124.8.108.188

02/15 01:22, , 1F
XD 自問自答 Move(Pointer(Longint
02/15 01:22, 1F
文章代碼(AID): #17j7Blr7 (Programming)
文章代碼(AID): #17j7Blr7 (Programming)