std:: remove
|
Определено в заголовке
<cstdio>
|
||
|
int
remove
(
const
char
*
pathname
)
;
|
||
Удаляет файл, идентифицируемый строкой символов, на которую указывает pathname .
Если файл в настоящее время открыт каким-либо процессом, поведение этой функции определяется реализацией. В системах POSIX имя файла (запись в каталоге) удаляется, но пространство файловой системы, используемое файлом, не освобождается, пока он открыт в каком-либо процессе и пока существуют другие жёсткие ссылки на файл. Windows не позволяет удалить файл в таких случаях.
Содержание |
Параметры
| pathname | - | указатель на строку с нулевым завершителем, содержащую путь к удаляемому файлу |
Возвращаемое значение
0 при успешном выполнении или ненулевое значение при ошибке.
Примечания
POSIX определяет множество дополнительных деталей поведения этой функции.
Стандартная библиотека также определяет шаблон функции std::remove принимающий пару итераторов и значение, эта перегрузка является одним из стандартных алгоритмов .
Пример
#include <cstdio> #include <cstdlib> #include <fstream> #include <iostream> int main() { // создаем файл, проверяем успешность с использованием operator! временного объекта потока if (!std::ofstream("file1.txt").put('a')) { std::perror("Error creating file1.txt"); return EXIT_FAILURE; } std::cout << std::ifstream("file1.txt").rdbuf() << '\n'; // выводим содержимое файла std::remove("file1.txt"); // удаляем файл if (!std::ifstream{"file1.txt"}) // использует operator! временного объекта потока { std::perror("Error opening deleted file"); return EXIT_FAILURE; } return EXIT_SUCCESS; }
Возможный вывод:
a Error opening deleted file: No such file or directory
Смотрите также
|
(C++17)
(C++17)
|
удаляет файл или пустую директорию
удаляет файл или директорию и всё их содержимое рекурсивно (функция) |
|
переименовывает файл
(функция) |
|
|
Документация C
для
remove
|
|