DELPHI的结构体共用体和位域的等效实现
来源:优易学  2011-6-7 12:26:42   【优易学:中国教育考试门户网】   资料下载   IT书店
  结构体:就是DELPHI的packed record,packed必须要,不然不是按byte对齐。
  共用体:其实也就是absolute关键字的使用,如下
  procedure TForm1.Button2Click(Sender: TObject);
  type
  TRGB = packed record //结构体
  R: Byte;
  G: Byte;
  B: Byte;
  A: Byte;
  end;
  var
  rgbPack: TRGB;
  rgbData: Integer absolute rgbPack; //共享内存单元
  begin
  rgbData := $AA0080FF;
  ShowMessage(IntToStr(rgbPack.R) + ',' + IntToStr(rgbPack.G) + ',' + IntToStr(rgbPack.B));
  end;
  位域就没辙了,没有简单的方法,还是写shr,shl然后再用and去进行位与来实现吧。

责任编辑:小草

文章搜索:
 相关文章
热点资讯
资讯快报
热门课程培训