K klsyk Unregistered / Unconfirmed GUEST, unregistred user! 2004-03-25 #1 在delphi中如何对DWORD类型的各个字节进行访问
刘 刘麻子 Unregistered / Unconfirmed GUEST, unregistred user! 2004-03-25 #2 类型名()就是强制类型转换函数 DWORD; (pbyte(@D))^ (pbyte(dowrd(@D)+1))^ (pbyte(dword(@D)+2))^ (pbyte(dword(@D)+3))^
类型名()就是强制类型转换函数 DWORD; (pbyte(@D))^ (pbyte(dowrd(@D)+1))^ (pbyte(dword(@D)+2))^ (pbyte(dword(@D)+3))^
J jackchin Unregistered / Unconfirmed GUEST, unregistred user! 2004-03-25 #3 {$A-} var DW: DWord; BR: array [0..3] of byte absolute DW {$A+} begin BR[0] := 1 //DW的最低字节 BR[3] := 2 //DW的最高字节 end;
{$A-} var DW: DWord; BR: array [0..3] of byte absolute DW {$A+} begin BR[0] := 1 //DW的最低字节 BR[3] := 2 //DW的最高字节 end;
K klsyk Unregistered / Unconfirmed GUEST, unregistred user! 2004-03-25 #4 有无函数比如:c++中lowbyte,hibyte,lowword,hiword
B bjdribllec Unregistered / Unconfirmed GUEST, unregistred user! 2004-03-25 #5 lowbyte,hibyte => lo,hi
K klsyk Unregistered / Unconfirmed GUEST, unregistred user! 2004-03-25 #6 谢谢大家,更要谢谢bjdribllec,但dword是4个字节的,请问有与loword,hiword功能相似的函数么?
J jackchin Unregistered / Unconfirmed GUEST, unregistred user! 2004-03-25 #7 好象只有lo, hi了, 不过即使有loword,hiword也不管用, 难道想 用hi(lowword(DW)) 这样访问中间的字节? 还不如用刘麻子的方法, 或者用我的声明absolute变量的方法
好象只有lo, hi了, 不过即使有loword,hiword也不管用, 难道想 用hi(lowword(DW)) 这样访问中间的字节? 还不如用刘麻子的方法, 或者用我的声明absolute变量的方法
K klsyk Unregistered / Unconfirmed GUEST, unregistred user! 2004-03-25 #8 jackchin,我是一个新手,倾解释一下“BR: array [0..3] of byte absolute DW {$A-} {$A+}”,谢谢!
K klsyk Unregistered / Unconfirmed GUEST, unregistred user! 2004-03-25 #9 谢谢!I know function hi and lo before!
J jackchin Unregistered / Unconfirmed GUEST, unregistred user! 2004-03-25 #10 DW: DWord; BR: array [0..3] of byte absolute DW 这样声明BR, BR的地址就和DW一样, BR[0]其实就是DW的低位 {A+}, {A-}是编译指令, 防止字节对齐,(这里好象不需要, 这样作为了保险起见)
DW: DWord; BR: array [0..3] of byte absolute DW 这样声明BR, BR的地址就和DW一样, BR[0]其实就是DW的低位 {A+}, {A-}是编译指令, 防止字节对齐,(这里好象不需要, 这样作为了保险起见)