![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Записи на С++ [D7, XP]
APiC © (2007-03-25 11:45:00)Доброго времени мастера! У меня трудности с С++. Помогите кто-нибудь переписать на делфи следующие структуры:
typedef struct
{
LARGE_INTEGER StartingVcn;
} STARTING_VCN_INPUT_BUFFER, *PSTARTING_VCN_INPUT_BUFFER;
typedef struct RETRIEVAL_POINTERS_BUFFER
{
DWORD ExtentCount;
LARGE_INTEGER StartingVcn;
struct
{
LARGE_INTEGER NextVcn;
LARGE_INTEGER Lcn;
} Extents[1];
} RETRIEVAL_POINTERS_BUFFER, *PRETRIEVAL_POINTERS_BUFFER;
Заранее спасибо!
palva (2007-03-29 15:50:00) [1]> Надо использовать Int64, других 64-битных целых типов в Delphi нет.
В Turbo Delphi начал корректно работать тип UInt64, но в документации пока не отражен.
Игорь Шевченко (2007-03-29 15:18:00) [2]Elen © (29.03.07 10:30) [9]
> Эт верно, я просто обратила внимание на беззнаковое, поэтому
> и предложила кардинал
Боже, какой же бред ты порой несешь
TRUNK (2007-03-29 13:30:00) [3]
> begin...end © (29.03.07 12:58) [10]
Согласен. Но лично я предпочитаю вместо packed использовать {$A-}.
begin...end (2007-03-29 12:58:00) [4]> TRUNK © (25.03.07 16:25) [4]
type
RETRIEVAL_POINTERS_BUFFER = packedrecord
...
Elen (2007-03-29 10:30:00) [5]
> TRUNK © (29.03.07 10:13) [8]
Эт верно, я просто обратила внимание на беззнаковое, поэтому и предложила кардинал, ато ведь int64 со знаком...
TRUNK (2007-03-29 10:13:00) [6]
> Elen © (29.03.07 09:44) [7]
ULONGLONG - это беззнаковое 64-битное целое, так что Cardinal не пойдёт. Надо использовать Int64, других 64-битных целых типов в Delphi нет.
Elen (2007-03-29 09:44:00) [7]
> Кто-нибудь может сказать аналог типа ULONGLONG
попробуй Cardinal
Apic (2007-03-29 09:25:00) [8]Кто-нибудь может сказать аналог типа ULONGLONG в Delphi. Я ипользую LongInterger, может я не прав?
APiC (2007-03-29 09:23:00) [9]Спасибо TRUNK!
TRUNK (2007-03-25 16:25:00) [10]> но больше всего меня интересует вторая запись RETRIEVAL_POINTERS_BUFFER!
А это как-нибудь так:
type
RETRIEVAL_POINTERS_BUFFER = record
ExtentCount: DWORD;
StartingVcn: LARGE_INTEGER;
Extents: array[0..0] of record
NextVcn: LARGE_INTEGER;
Lcn: LARGE_INTEGER;
end;
end;
PRETRIEVAL_POINTERS_BUFFER = ^RETRIEVAL_POINTERS_BUFFER;
palva (2007-03-25 15:01:00) [11]Если бы вас интересовал C++ или Delphi, а то "вторая запись RETRIEVAL_POINTERS_BUFFER"
Не хочу отбивать хлеб у программистов.
Apic (2007-03-25 12:31:00) [12]Спасибо, но больше всего меня интересует вторая запись RETRIEVAL_POINTERS_BUFFER!
palva (2007-03-25 12:20:00) [13]Как-нибудь так:
type
STARTING_VCN_INPUT_BUFFER = record
StartingVcn: LARGE_INTEGER
end;
PSTARTING_VCN_INPUT_BUFFER = ^STARTING_VCN_INPUT_BUFFER;
и т. д.