Выделение буфера с помощью read (C) - PullRequest
0 голосов
/ 01 ноября 2019

Интересно, функция чтения выделяет размер буфера для буфера, который ему переходит, или нет? Мне нужно знать, чтобы увидеть, нужно ли мне освободить буфер или нет после того, как я с ним покончу.

Вот прототип функции:

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

1 Ответ

2 голосов
/ 02 ноября 2019

Нет, чтение не делает никакого выделения. Он считывает данные в буфер, который вы предоставляете в качестве аргумента, который должен быть выделен вами до вызова read. Вы можете использовать буфер в куче или стеке, или глобальный буфер;это ваш выбор.

...