-
- Даже если немного ошибся с ручным выравниванием, и компилятор вставит лишнее заполнение, потеряешь пару байт. Перфекционизм - зло, выдавливай по капле. Если что, имею в виду, что "pack" отключено, так лучше. - SciFi(18.04.2023 19:45)
- Кстати, через X-Macro можно что-то такое провернуть. Посчитать сумму размеров полей структуры и сравнить с размером структуры. - SciFi(18.04.2023 19:40)
- Включите максимальную оптимизацию компиляции и оптимизацию во время сборки, LTO, то есть, ключик --flto у GCC. В разы увеличивается эффективность поиска потенциальных глюков кода. Включите все предупреждения -Wall (если не ошибаюсь). И предупреждения - ошибки -Werror. Много интересного узнаете о своём коде. Nikolay_Po(241 знак., 18.04.2023 19:08)
- Делайте как написал выше: большие элементы сначала. Спокойно пакуйте. Если переживаете, добавьте __attribute__((aligned)) в определении структуры. Nikolay_Po(504 знак., 18.04.2023 19:00)