c - 如何创建文件流?

标签 c memory-management io filestream

<分区>

文件流总是通过指针访问,并且总是预先创建的。但是是否可以在不使用外部文件的情况下在程序内部创建文件流作为在内存中保留空间的对象?

我的第一个想法是声明一个 FILE *指针然后为 FILE 分配内存对象使用 malloc() :

FILE *fileStream = malloc(sizeof(FILE));

但我想这是不对的。

我怎样才能以正确的方式做到这一点,以便我可以使用 fileStream使用像 fprintf() 这样的 I/O 函数和 fscanf() ...

最佳答案

C 本身不支持这个。您将需要使用特定于平台的方法。例如,如果在 Unix 上,您可以组合 memmapfdopen。对于其他平台,请参阅平台文档。

关于c - 如何创建文件流?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21308147/

相关文章:

function - Elixir 检查是否从 ExUnit 测试中调用了一个函数?

在 c 中将 64 位 int 从主机转换为网络顺序,我只得到零

c - 列出链接列表的内容

c - 使用 MPI,消息似乎在发送之前已收到

ios - iPhone调用相机时随机死机?

python - 如何使 BufferedReader 的 peek 更可靠?

c - 两遍汇编程序修复

memory-management - 内存保护的最新技术是什么?

flash - Flash/as3中有哪些好的内存管理技巧

c++ - 如何从文件中读取前 256 位并将它们存储在两个数组中