#define DEFAULT_IPV4_PING_TYPES (PINGTYPE_ICMP_PING|PINGTYPE_TCP|PINGTYPE_TCP_USE_ACK|PINGTYPE_TCP_USE_SYN|PINGTYPE_ICMP_TS)
上面的语法实际上做了什么? 下面是常数的值。
#define PINGTYPE_ICMP_PING 2
#define PINGTYPE_TCP 16
#define PINGTYPE_TCP_USE_SYN 64
#define PINGTYPE_ICMP_TS 8
是创建数组吗?
答案 0 :(得分:0)
此宏定义了所有ping类型的掩码。
按位操作
与
相同#define PINGTYPE_ICMP_PING 0x2
#define PINGTYPE_TCP 0x10
#define PINGTYPE_TCP_USE_SYN 0x40
#define PINGTYPE_ICMP_TS 0x8
当你按位OR时,你得到
0x2 | 0x10 | 0x8 | 0x40 = 0x5A
以二进制格式更清晰(使用8位简化)
00000010 (2)
01000000 (64)
00001000 (8)
00010000 (16)
=============
01011010 (5A)