Структура памяти структуры, имеющей битовые поля

У меня есть эта структура C: (представляет датаграмму IP) I '

struct ip_dgram
{
    unsigned int ver   : 4;
    unsigned int hlen  : 4;
    unsigned int stype : 8;
    unsigned int tlen  : 16;
    unsigned int fid   : 16;
    unsigned int flags : 3;
    unsigned int foff  : 13;
    unsigned int ttl   : 8;
    unsigned int pcol  : 8;
    unsigned int chksm : 16;
    unsigned int src   : 32;
    unsigned int des   : 32;
    unsigned char opt[40];
};

m присваивая ему значения, а затем распечатывая макет памяти в 16-битных словах, например:

//prints 16 bits at a time
void print_dgram(struct ip_dgram dgram)
{
    unsigned short int* ptr = (unsigned short int*)&dgram;
    int i,j;
    //print only 10 words
    for(i=0 ; i=0 ; j--)
        {
            if( (*ptr) & (1

Ответы на вопрос(5)

Ваш ответ на вопрос