看 unzip 的代码,函数格式都是这样的: unzFile unzOpen64 OF ((const void *path ));
查了下 OF 是说为兼容旧编译器保留的,有些老编译器可能需要#define OF (x ) (),不知道是哪个上古时期的玩意。 我猜是 C99 之后应该都是#define OF (x ) x 了。现在编译器会自动识别这个OF? 因为代码里面高亮显示 #ifndef OF #define OF _Z_OF #endif 这几行没有生效,似乎编译器已检查过OF了。
那‘ OF ’最初是怎么一回事,为什么会出来这么奇怪的设计?现在应该完全淘汰了吧,但是说明也找不到几句, OF 做关键字完全没法搜索····