unsigned int h_len:4 这种语法以前没见过
typedef struct tagIP_HEADER
{
unsigned int h_len:4; // length of the header
unsigned int version:4; // Version of IP
unsigned char tos; // Type of service
unsigned short total_len; // total length of the packet
unsigned short ident; // unique identifier
unsigned short frag_and_flags; // flags
unsigned char ttl;
unsigned char proto; // protocol (TCP, UDP etc)
unsigned short checksum; // IP checksum
unsigned int sourceIP;
unsigned int destIP;
} IP_HEADER;
----------------------------------------------------------------------------
定义协议的头的时候经常碰到这样的定义,请问怎么赋值给h_len和version?
{
unsigned int h_len:4; // length of the header
unsigned int version:4; // Version of IP
unsigned char tos; // Type of service
unsigned short total_len; // total length of the packet
unsigned short ident; // unique identifier
unsigned short frag_and_flags; // flags
unsigned char ttl;
unsigned char proto; // protocol (TCP, UDP etc)
unsigned short checksum; // IP checksum
unsigned int sourceIP;
unsigned int destIP;
} IP_HEADER;
----------------------------------------------------------------------------
定义协议的头的时候经常碰到这样的定义,请问怎么赋值给h_len和version?
...全文
相关推荐
详解C语言中的char数据类型及其与int类型的转换
C语言中的char数据类型是一种特殊的整型数据类型,与其他如int、long、short等不同的是,char在C/C++语言标准中通常被定义为unsigned,最初设计时是为了表示ASCII码,其范围
浅谈mysql explain中key_len的计算方法
表结构如下:```sqlCREATE TABLE `member` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(20)
功能很实用的一个dll
功能很实用的一个dll这是别人给我的,我也没源码,但我看这些函数很实用,希望大家也喜欢.函数如下:unsigned short __cdecl _CRC16(char *buffer,int len)
AES Int数组加密Java C++
char[len];AES_cbc_encrypt(input, output, len, &aes_key, iv, AES_ENCRYPT);```4.
Keil_C51库函数原型列表
- `unsigned int _irol_(unsigned int i, unsigned char b)`:对`i`进行循环左移`b`位。


