【发布时间】:2016-08-26 01:06:21
【问题描述】:
在 C 中这部分代码工作正常,但在 C++ 中我得到一个错误:
“void *”类型的参数与“FILE”类型的参数不兼容 *"
我该如何解决?这是代码的相关部分:
static size_t read_callback(void *ptr, size_t size, size_t nmemb, void *stream)
{
curl_off_t nread;
size_t retcode = fread(ptr, size, nmemb, stream); /*i get an error on this line on stream */
nread = (curl_off_t)retcode;
fprintf(stderr, "*** We read %" CURL_FORMAT_CURL_OFF_T
" bytes from file\n", nread);
return retcode;
}
最终解决方案实际上很简单。因此,如果它对任何人有帮助,我只需将 void* 更改为 FILE *ptr 和 FILE *stream 就可以了
【问题讨论】:
-
与英国人说法语时,您会遇到同样的问题。 C 和 C++ 是不同的语言
-
一般来说,用 C++ 编译器编译 C 代码是个坏主意。这就是 C 编译器的用途。
标签: c++