5.1.5.2. Использование ISO С: remove()

5.1.5.2. Использование ISO С: remove()

ISO С предоставляет для удаления файлов функцию remove(); она предназначена в качестве обшей функции, годной для любой системы, поддерживающей ISO С, а не только для Unix и GNU/Linux:

#include <stdio.h> /* ISO С */

int remove(const char *pathname);

Хотя технически это не системный вызов, возвращаемое значение в том же стиле: 0 в случае успеха и -1 при ошибке, причем errno содержит значение ошибки.

В GNU/Linux remove() использует для удаления файлов системный вызов unlink(), а для удаления каталогов — системный вызов rmdir() (обсуждаемый далее в главе). (На более старых системах GNU/Linux, не использующих GLIBC, remove() является псевдонимом для unlink(); поэтому для каталогов завершается неудачей. Если у вас такая система, вам, возможно, следует ее обновить.)