Я хочу использовать эту структуру в Visual C ++:
struct iphdr
{
unsigned int ihl:4;
unsigned int version:4;
u_int8_t tos;
u_int16_t tot_len;
u_int16_t id;
u_int16_t frag_off;
u_int8_t ttl;
u_int8_t protocol;
u_int16_t check;
struct in_addr ip_src;
struct in_addr ip_dst;
};
, но при отладке я обнаружил sizeof(struct iphdr) = 24
, который ожидался равным 20
И странно, что когда я заменяю ihl
иversion
с char
, sizeof(struct iphdr) = 20