【发布时间】:2016-02-10 22:44:42
【问题描述】:
假设我有这些参数:
bool array_serialize(const void *src_data,
const char *dst_file,
const size_t elem_size,
const size_t elem_count);
假设src_data 是我要写入dst_file 的数组。
我不太明白如何使用fwrite。我知道fwrite需要四个参数:
-
ptr- 这是指向要写入的元素数组的指针。 -
size- 这是要写入的每个元素的字节大小。 -
nmemb- 这是元素的数量,每个元素的大小为 size 字节。 -
stream- 这是指向指定输出流的FILE对象的指针。
但我遇到的问题是*dst_file 是const char 类型。如何将其转换为合适的类型才能使用fwrite?
我试过做
fwrite(src_data, elem_size, elem_count, dst_file);
但显然这是不正确的。
fread 也有类似问题。
【问题讨论】:
-
C 和 C++ 是不同的语言!
-
你需要先
fopen文件... -
而且堆栈溢出是没有辅导网站的。请阅读函数的手册页或查阅 C 书籍 - 可能在每本 C 书籍中都有解释。