Вход
Наше всё
Теги
codebook
无线电组件
Поиск
Опросы
Закон
Воскресенье
21 июля
О смысле всего сущего
0xFF
Средства и методы разработки
Мобильная и беспроводная связь
Блошиный рынок
Объявления
Микроконтроллеры
PLD, FPGA, DSP
AVR
PIC
ARM, RISC-V
Технологии
Кибернетика, автоматика, протоколы
Схемы, платы, компоненты
Средства и методы разработки
865908
Топик полностью
SciFi
(28.08.2018 07:33, просмотров: 89)
ответил
Codavr
на
Захотел вывести поля структуры на отладочные выводы. Структура размером 1 байт из битовых полей. Структуры вообще допускают преобразование типа?
Через указатель: tmp |= *(uint8_t*)&mystruct >> 2;
ส็็็็็็็็็็็็็็็็็็็็็็็็็༼ ຈل͜ຈ༽ส้้้้้้้้้้้้้้้้้้้้้้้
Ответить
Ну это тоже объезд на кривой кобыле. Честно говоря я удивлен, компилеру не пох? Если я указываю явное преобразование, то значит ответственность беру на себя, выдай чо просят.
-
Codavr
(28.08.2018 07:40 - 07:45
)
Ты не понимаешь сути приведения типа. Это попытка сохранить значение, изменив формат (скажем, плавучка <--> целое). У структуры нет значения, это набор объектов, поэтому и приведение к целому типу не имеет смысла в общем случае. Ну или используй
SciFi
(19 знак., 28.08.2018 08:29
)
Именно что не понимал, потому и спросил. Про объединение понятно, первая мысль была, потом уже про указатель подумал. Как объехать на кривой кобыле было ясно сразу, посему и обозначил, что эти рекомендации не требуются. Запросил пояснений именно
Codavr
(49 знак., 28.08.2018 13:47
)