1

我得到了一个如下所示的 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++)中得到错误。

提前致谢。

4

2 回答 2

2

这是一种非常老式的 C(前 ANSI C 语法)做事方式。如果您拥有代码,我建议您将其更改为

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

这里这里有更多细节

于 2013-07-10T10:19:48.310 回答
0

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

于 2013-07-10T10:32:52.660 回答