读取缓冲区分配 (C)

Buffer allocating with read (C)

我想知道 read 函数是否将 Buffer 大小分配给传递给它的 Buffer? 我需要知道这一点,以便在完成后查看是否需要释放缓冲区。

这里是函数的原型:

ssize_t read(int fildes, void *buf, size_t nbytes);

不,读取不做任何分配。它将数据读入您作为参数提供的缓冲区,该缓冲区必须在调用 read 之前由您分配。您可以使用堆或堆栈上的缓冲区,或全局缓冲区;这是你的选择。