dru*_*key 2 c string buffer char
我正在创建一个“字符串”
char buffer[BUFFER_SIZE]
Run Code Online (Sandbox Code Playgroud)
但是当它变满时,我想将它连接到一个预先存在的字符串上,但它需要具有无限长度并重复这个过程,直到我读完所有数据。
关于我如何做到这一点的任何想法?
我过去曾使用open_memstream来实现这一点。
此函数打开一个流以写入缓冲区。缓冲区使用 malloc 动态分配并根据需要增长。关闭流后,您有责任使用 free 或 realloc 清理此缓冲区。
https://www.gnu.org/software/libc/manual/html_node/String-Streams.html
#include <stdio.h>
int
main (void)
{
char *bp;
size_t size;
FILE *stream;
stream = open_memstream (&bp, &size);
fprintf (stream, "hello");
fflush (stream);
printf ("buf = `%s', size = %zu\n", bp, size);
fprintf (stream, ", world");
fclose (stream);
printf ("buf = `%s', size = %zu\n", bp, size);
return 0;
}
Run Code Online (Sandbox Code Playgroud)