// i386 is little_endian.
#ifndef LITTLE_ENDIAN
#define LITTLE_ENDIAN (1) //BYTE ORDER
#else
#error Redefine LITTLE_ORDER
#endif
几点自己的心得:
1.TCP/IP是起源自unix的,所以我先阅读的是linux下的源代码,但是发现linux的源代码很复杂,很乱。各种typedef,因为主要是了解,所以就找到了这个比较简洁的。
2.记住 一个 char 是8个bit,上面的代码中有很多是 分号接个数字,比如unsigned char ihl:4; IP头的长度只要4bit,而char是8bit,所以才这么写。另外,这么写是符合C语法的,能够编译通过的