Почему структура GUID объявлена такой, какая она есть?
-
07-07-2019 - |
Вопрос
В rpc.h структура GUID объявлена следующим образом:
typedef struct _GUID
{
DWORD Data1;
WORD Data2;
WORD Data3;
BYTE Data[8];
} GUID;
Я понимаю Data1, Data2 и Data3.Они определяют первый, второй и третий наборы шестнадцатеричных цифр при записи GUID (XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX).
Чего я никогда не понимал, так это почему последние 2 группы были объявлены вместе в одном и том же массиве байтов.Разве это не имело бы больше смысла (и было бы проще кодировать против)?
typedef struct _GUID
{
DWORD Data1;
WORD Data2;
WORD Data3;
WORD Data4;
BYTE Data5[6];
} GUID;
Кто-нибудь знает, почему это объявлено таким образом?
Другие советы
http://en.wikipedia.org/wiki/Globally_Unique_Identifier и http://www.opengroup.org/onlinepubs/9629399/apdxa.htm (Первоначальное представление DCE, вы можете увидеть группировку биты там, в таблице)
Не связан с StackOverflow