我无法理解这段代码

时间:2013-07-10 10:15:34

标签: c++ c linux g++

我得到了一个C / C ++代码,如下所示:

extern int ZEXPORT zipOpenNewFileInZip3 (file, filename, zipfi, extrafield_local)
  zipFile file;
  const char* filename;
  const zip_fileinfo* zipfi;
  const void* extrafield_local;

{

... function body

}

是否可以声明函数的参数?我从编译器(g ++)收到错误。

提前致谢。

2 个答案:

答案 0 :(得分:2)

这是一种非常老派的C(前ANSI C语法)方式。我建议你改变它,如果你拥有代码,

extern int ZEXPORT zipOpenNewFileInZip3 (
  zipFile file,
  const char* filename,
  const zip_fileinfo* zipfi,
  const void* extrafield_local)
...

还有一些细节herehere

答案 1 :(得分:0)

这是用于在C中定义函数的古老语法。它早于C语言的第一个标准化版本。更重要的是,该语法从来就不是有效的C ++。由于您使用C ++编译器编译此代码(显然是C代码),因此它失败了。