C结构到Delphi记录(转换)

时间:2011-03-16 00:19:45

标签: c delphi

有人可以像记录一样将这个C结构转换为delphi吗?

typedef struct {
    Uint16    addr2:8;
    Uint16    addr1:8;
    Uint16    addr4:8;
    Uint16    addr3:8;
    Uint16    addr6:8;
    Uint16    addr5:8;
}MY_ADDR;

我试过了myslef。但我无法弄清楚如何处理 addr2:8 (:8)问题。

MY_ADDR = record
  addr2:8 : Uint16;
  addr1:8 : Uint16;
  addr4:8 : Uint16;
  addr3:8 : Uint16;
  addr6:8 : Uint16;
  addr5:8 : Uint16;
  end;

我不确定我是否还需要这个?

pMY_ADDR = ^MY_ADDR;

1 个答案:

答案 0 :(得分:4)

MY_ADDR = record
  addr1 : Byte;
  addr2 : Byte;
  addr3 : Byte;
  addr4 : Byte;
  addr5 : Byte;
  addr6 : Byte;
end;

由于MS C位域中的字节排序,您需要交换它们。