Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   Вопрос по SAFEARRAY (https://forum.antichat.xyz/showthread.php?t=129957)

_nic 15.07.2009 19:31

Вопрос по SAFEARRAY
 
Часто на форумах мсдна наталкивался на примерно такое вот обращение к этому массиву
Цитата:

SAFEARRAY *sfarray;
.................................................
ULONG value = (&sfarray)->rgsabound[0].cElements;
Подскажите что значат эти скобки окружающие массив?Пробовал воспроизвести у себя но получаю ошибки типа C2228,C2227. Вот теперь ломаю голову как такое работает :(

Gar|k 16.07.2009 22:28

я думаю скобки здесь указывают на то что в этот массив вложен еще один массив...

вот что выдал поиск по запросу SAFEARRAY - http://www.rsdn.ru/article/com/varsafearr.xml

я сталкивался в своей практивке со вложеными структурами... и иногда очень тяжело было намудрить чтобы получить нужные данные, но я обявлял новые указатели и проблема решалась...

вот пример моего кода со вложенными стуктурами.
Код:

typedef struct Partition_Table_Entry
{
        BYTE act;
        BYTE spart_gol;
        BYTE spart_sek;
        BYTE spart_dor;
        BYTE type;
        BYTE epart_gol;
        BYTE epart_sek;
        BYTE epart_dor;
        DWORD offset_first_sektor;
        DWORD kolsek;
} PTE;

typedef struct Partition_Table
{
  PTE pte[4];
} PT;
//-------------------------
PT *part_table;
part_table=(PT *)&dump_disk[code_offset];
...
printf("%x",part_table->pte[i].type);
...



Время: 23:01