ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
25 апреля
706831 Топик полностью
Ale3000 (19.10.2016 11:43, просмотров: 148) ответил VL на При создании указателя на поле невыравненной структуры компилятор предупреждает Warning[Pa039]: use of address of unaligned structure member. В чем риск? Компилятор ведь должен учесть отсутствие выравнивания?
Какой процессор? Какая разрядность поля ? ARM - при обращении к 32-разрядному полю, младшие 2 бита адреса игнорируются процессором. Компилятор мог бы сгенерить код, побайтово выгребающий 4 байта из памяти, но это приведет к увеличению размера кода. Intel 80386 - при обращении к 32-разрядному полю, считывает это поле правильно независимо от того, выровнено оно или нет. Если не выровнено, то потребуется дополнительный цикл чтения из памяти.