Недавно я подумал о выравнивании... Это то, что мы обычно не рассматриваем, но я понял, что некоторые процессоры требуют выравнивания объектов по 4-байтным границам. Что именно это означает, и какие конкретные системы имеют требования к выравниванию?
Предположим, что у меня есть произвольный указатель:
unsigned char* ptr
Теперь я пытаюсь получить двойное значение из ячейки памяти:
double d = **((double*)ptr);
Это вызовет проблемы?