首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

这是什么诡谲的语法

2013-03-26 
这是什么诡异的语法阅读别人代码,发现用zlib库,于是跳转到头文件,看到函数声明:ZEXTERN int ZEXPORT infla

这是什么诡异的语法
阅读别人代码,

发现用zlib库,

于是跳转到头文件,看到函数声明:

ZEXTERN int ZEXPORT inflate OF((z_streamp strm, int flush));


ZEXTERN---extern
ZEXPORT---导出符号


#  define inflatez_inflate  //这个估计是一个函数名

OF是什么?

是一个简单的宏?




[解决办法]
也许是一个用来 生成参数列表的宏
信息不足 我只能这样猜测了
[解决办法]
貌似是
#define OF(x) x
[解决办法]
EXTERN 就没有找到。估计是extern吧!


 179 #ifndef OF /* function prototypes */
 180 #  ifdef STDC
 181 #    define OF(args)  args
 182 #  else
 183 #    define OF(args)  ()
 184 #  endif
 185 #endif

 237 #if (defined(_WINDOWS) 
[解决办法]
 defined(WINDOWS)) && defined(ZLIB_DLL)
 238 #  include <windows.h>
 239 #  define EXPORT  WINAPI
 240 #else
 241 #  define EXPORT
 242 #endif

[解决办法]
刚好看过一点源码。
#ifndef OF /* function prototypes */
#  ifdef STDC
#    define OF(args)  args
#  else
#    define OF(args)  ()
#  endif
#endif

我猜可能有些编译器支持的函数原型就是这样....

热点排行