我正在使用 native C++(无 clr)创建程序。我正在使用一个转换数据并通常将其写入文件或标准输出的工具包。 问题是我想将它写入一个数组,但我不知道要发送的大小。 该工具包需要一个参数“FILE *”并且不能修改。
基本工作代码:
FILE * ofile = fopen("yourfile.dat", "wb");
toolkit::function(ofile);
fclose(ofile);
标准输出第一行是
FILE * ofile = stdout;
我现在想要的是,我可以执行函数 end 最后有一个指向数组 op 字节(例如 char *)的指针及其大小。 我一直在四处寻找可以找到解决方案。 首先写入文件不是一种选择。
最佳答案
如果我没听错,您需要一个 FILE* 对象,它将所有写入的字节存储在内存缓冲区中,对吧?
fmemopen
确实完成了这项工作,但它是 POSIX.1-2008 并且根据其联机帮助页并未广泛使用。
关于c++ - 流到字节数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7673267/