История изменений
Исправление
arturpub,
(текущая версия)
:
А, ясно.
Нет hto* для 64 бит.
htonl(x & UINT32_MAX), htonl(x >> 32). Но если архитектура фикс, то я бы и париться не стал (наверное, у меня на это дело иногда случается ОКР).
не смог найти в стандарте
Я тоже не lawyer, вот цитата цитаты из википедии.
Structure and union specifiers have the same form. [ . . . ] The size of a union is sufficient to contain the largest of its members. The value of at most one of the members can be stored in a union object at any time. A pointer to a union object, suitably converted, points to each of its members (or if a member is a bit-field, then to the unit in which it resides), and vice versa. — ANSI/ISO 9899:1990 (the ANSI C standard) Section 6.5.2.1
ps. вместо UINT32_MAX читать ~(uint32_t)0 или типа того.
Исходная версия
arturpub,
:
А, ясно.
Нет hto* для 64 бит.
htonl(x & UINT32_MAX), htonl(x >> 32). Но если архитектура фикс, то я бы и париться не стал (наверное, у меня на это дело иногда случается ОКР).
не смог найти в стандарте
Я тоже не lawyer, вот цитата цитаты из википедии.
Structure and union specifiers have the same form. [ . . . ] The size of a union is sufficient to contain the largest of its members. The value of at most one of the members can be stored in a union object at any time. A pointer to a union object, suitably converted, points to each of its members (or if a member is a bit-field, then to the unit in which it resides), and vice versa. — ANSI/ISO 9899:1990 (the ANSI C standard) Section 6.5.2.1