【发布时间】:2014-01-23 12:27:33
【问题描述】:
文件流总是通过指针访问,并且它们总是预先创建的。但是是否有可能在程序内部创建一个文件流作为一个在内存中保存空间而不使用外部文件的对象?
我的第一个想法是声明一个FILE * 指针,然后使用malloc() 为FILE 对象分配内存:
FILE *fileStream = malloc(sizeof(FILE));
但我想这是不对的。
我怎样才能以正确的方式做到这一点,以便我可以使用 fprintf() 和 fscanf() 等 I/O 函数来处理 fileStream ...
【问题讨论】:
-
fopen有什么问题? -
您的意思是要将内存中的缓冲区视为文件吗?
-
@larsmans 是的,就像
stdin... -
我还是不明白你的意思。
stdin是香草FILE*。 -
@larsmans
stdin是FILE*但它指向内存中的一个空间,不是吗?
标签: c memory-management io filestream