Что-то я си подзабыл =)
Нужно:
Массив элементов, длиной три байта (вообще произвольное число байт). Как его объявить и использовать? Пока что придумалось только
struct __attribute__((__packed__)) byte3
{
char b1,b2,b3; /* или char b[3]; */
};
struct byte3 A[100000];
А есть ли более, так сказать, красивый способ? Тем более, что __attribute__((__packed__)) компиляторозависим. И нет уверенности, что в массиве компилятор не примется выравнивать байты, а надо чтобы 3+3+3+3+3+... плотно шли.
Задачка потруднее:
То же самое, но с массивом с произвольным количеством бит элементов, как правильно работать? Есть же какие-то типовые приемы.