>или же в обьявлении струкутуры в Си явно отменить для нее выравнивание
>(есть там у gcc такая директива)struct data
{
unsigned char a;
unsigned char b;
unsigned int c;
} __attribute__((packed));
>но не один вариант не
>нравится....не красиов как то :)
очень даже красиво. Иначе, если будешь искать идеал, то скоро будешь работать с битовыми цепочками, а не байтами :)
>Может можно pack заставить самому делать
>выравнивание на по границе ?
А почему бы не манипулировать значениями unsigned int вместо unsigned char. Кто не хочет заморачиваться с выравниванием, именно так и поступает.
Кроме этой у сетевых приложений есть проблемы с big-endian и little-endian. Чтобы сильно не утомляться, можно использовать XDR(3) функции, специально для этого предназначенные.