Wireshark использует pletohs для преобразования unsigned char в unsigned short. Как понять этот код? - PullRequest
0 голосов
/ 25 марта 2019

Я читаю исходный код wireshark. Но я не могу понять этот код:

typedef unsigned short guint16;
typedef unsigned char guint8;
#define pletohs(p)  ((guint16)                       \                                                                                                                                                                                      
                     ((guint16)*((const guint8 *)(p)+1)<<8|  \
                      (guint16)*((const guint8 *)(p)+0)<<0))
const guint8 *ptr;
pletohs(ptr);    

как работает pletohs?

...