为了和以前的16位windows兼容。
以前有far 指针和near指针之分。
在DOS下(实模式)地址是分段的,每一段的长度为64K字节,刚好是16位(二进制的十六位)。 near指针的长度是16位的,所以可指向的地址范围是64K字节,通常说near指针的寻址范围是64K。 far指针的长度是32位,含有一个16位的基地址和16位的偏移量,将基地址乘以16后再与偏移量相加, (所以实际上far指针是20位的长度。)即可得到far指针的1M字节的偏移量。所以far指针的寻址范 围是1M字节,超过了一个段64K的容量。
typedef png_byte FAR * FAR * png_bytepp; 指向指针的指针;