수고들 많으심다.
C 에서 사용하고 있는 구조체를 델파이 형식으로 변경 하려고 하오나 define문에 대한 정의
부분을 해결 하지를 못하고 있사와 글을 올립니다.
[예제_1]은 C 에서 사용하고 있는 구조체이고
[예제_2]는 Delphi 에서 선언한 부분 입니다. define 정의를 어떻게 선언 해야 되는지
많은 조언 부탁 드립니다..
그럼 ....
[예제_1]
typedef struct df_iott DF_IOTT;
struct df_iott {
unsigned long io_offset;
unsigned long io_length;
char *io_bufferp;
DF_IOTT *io_prevp;
DF_IOTT *io_nextp;
void *io_datap;
};
#define io_firstpg io_offset
#define io_pgcount io_length
[예제_2]
Type
IOTT = ^DF_IOTT;
DF_IOTT = Record
io_offset : LongInt;
io_length : LongInt;
io_bufferp : PChar;
io_prevp : IOTT;
io_nextp : IOTT;
io_datap : PChar;
end;
음... const를 사용해서 해보았지만..안돼네여..
다음 소스를 참고하시길..
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;
Type
IOTT = ^DF_IOTT;
DF_IOTT = Record
io_offset : LongInt;
io_length : LongInt;
io_bufferp : PChar;
io_prevp : IOTT;
io_nextp : IOTT;
io_datap : PChar;
end;
type
TForm1 = class(TForm)
ListBox1: TListBox;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
NewIott : DF_IOTT;
public
{ Public declarations }
end;
var
Form1: TForm1;
io_firstpg : LongInt;
io_pgcount : LongInt;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
begin
NewIott.io_offset := 90;
NewIott.io_length := 100;
io_firstpg := NewIott.io_offset;
io_pgcount := NewIott.io_length;
end;
end.
// 즐팅하시길.....