Каков корректный способ использовать битовые поля в C?

Принятый ответ на этот вопрос отвечает, как хранить только ссылки на идентификаторы.

Чтобы уточнить, что делать с конкретным вопросом, вы хотели бы сделать следующее:

@ElementCollection
@CollectionTable(name = "LanguageRecordTable", joinColumns=(@JoinColumn(name=""))
@Column(name = "")
List languageRecordsIds;

7
задан ctuffli 29 June 2011 в 23:24
поделиться

3 ответа

Вы могли бы пропускать структуру в своем объединении.

typedef struct
{
    union{
       struct {
           unsigned long mantissa: 23;
           unsigned long exponent: 8;
           unsigned long sign: 1;
       } float_parts;
       float all;
    };
}_float __attribute__((__packed__));

Обратите внимание, что порядок мантиссы/экспоненты и знака зависит один порядок байтов CPU.

17
ответ дан 6 December 2019 в 11:53
поделиться

Если Вы находитесь на glibc платформе, можно смотреть на ieee754.h заголовочном файле. Это заботится о материале порядка байтов. Если не это все еще, вероятно, стоит для взгляда на нем.

0
ответ дан 6 December 2019 в 11:53
поделиться

Проблема состоит в том, что это - объединение. Это должна быть 'структура'.

0
ответ дан 6 December 2019 в 11:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: