ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
23 ноября
1021130 Топик полностью
RxTx (26.07.2020 16:24, просмотров: 549) ответил йцyкeн на SciFi же дал ссылку на кейловскую документацию: Taking the address of a field in a #pragma packed struct does not yield a __packed pointer. Так что это не баг, а фичер: в структуре лежит __packed int, а берёшь адрес, и брюки превращаются... превращаются брюки... Идиотизм конечно, но bug report слать действительно бесполезно.
Тут тонкость в том, что проблема будет только лишь при разыменовании указателя. Для memcpy() тут исключение. memcpy() принимающая void* всегда должна работать корректно при любом значении указателя, выравнен он или не выравнен. Однако в-том то и дело, что в данном случае без "ручного вмешательства" правильно она не работает. 
Спасибо, князь. Вы настоящий дворянин. И программист.