使用一些 malloc-ed 内存而不是使用文件来虚拟化 fopen

杰克

我有一段使用FILE* file带有 fwrite的代码

test = fwrite(&object,sizeof(object),1,file);

我想用索引结构序列化一些内部数据结构(因此,我既不使用 Google 的 Protobuf 也不使用 Cap'n Proto,因为这是具有某些特定索引要求的自定义数据结构)。现在,在我的项目中,我想使用 Google Test 来测试序列化,以检查它已被序列化的内容是否可以反序列化并轻松检索。在测试阶段,我想传递给 fwrite 一个 FILE* 对象,它不是一个文件,而是一些分配的主内存的处理程序,以便不产生文件,并且我可以直接检查主内存的结果序列化。是否可以虚拟化FILE*并直接写入主内存?出于性能原因,我想保留 fwrite 来编写数据结构,而不必被迫编写两种不同的序列化方法(有时我正在即时编写而没有进一步占用内存进行转码)。提前致谢。

杰克

fopencookie 完成了我正在寻找的工作。

http://man7.org/linux/man-pages/man3/fopencookie.3.html

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用 malloc'ed 字符串的 C 分段错误

来自分类Dev

为什么如果我不给malloc()一些内存,使用char *会导致程序停止?

来自分类Dev

使用HTTPS的Fopen Url

来自分类Dev

malloc的功能(正确使用malloc)

来自分类Dev

使用查找删除一些文件

来自分类Dev

使用查找删除一些文件

来自分类Dev

在Windows的目录上使用fopen

来自分类Dev

在Windows的目录上使用fopen

来自分类Dev

我遇到了fopen_s的内存泄漏,但是没有“新”或“ malloc”的内容

来自分类Dev

C ++使用CreateFile而不是fopen进行查找

来自分类Dev

C ++使用CreateFile而不是fopen进行查找

来自分类Dev

我该如何使用curl而不是fopen

来自分类Dev

使用jQuery隐藏一些文本

来自分类Dev

使用JavaCV拼接一些图像

来自分类Dev

使用jQuery隐藏一些文本

来自分类Dev

MySQL,仅使用一些结果

来自分类Dev

使用一些$ parents进行$ broadcast

来自分类Dev

使用JavaScript订购一些日期

来自分类Dev

使用jQuery更改一些文本

来自分类Dev

使用JSoup获取一些属性

来自分类Dev

使用MATLAB的一些Pizza菜单

来自分类Dev

不使用malloc读取的内存

来自分类Dev

如何使用fopen()打开http文件?

来自分类Dev

不使用fopen()读取文件(C语言)

来自分类Dev

无法使用fopen(php)打开文件

来自分类Dev

使用fopen的文件名上的问号

来自分类Dev

使用fopen在C中打开文件

来自分类Dev

使用fopen的文件名上的问号

来自分类Dev

如何使用malloc malloc结构数组