remove
Определено в заголовке <stdio.h> | ||
|---|---|---|
int remove( const char* fname ); |
Удаляет файл, идентифицируемый строкой символов, на которую указывает fname.
Если файл в данный момент открыт этим или другим процессом, поведение этой функции определяется реализацией (в частности, системы POSIX удаляют имя файла, хотя место на файловой системе не освобождается до тех пор, пока последний запущенный процесс не закроет файл; Windows не позволяет удалять файл).
Параметры
| fname | - | указатель на завершающуюся нулём строку, содержащую путь, идентифицирующий файл для удаления |
Возвращаемое значение
значение ноль при успехе или ненулевое значение при ошибке.
Примечания
POSIX определяет множество дополнительных деталей поведения этой функции.
Пример
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
FILE* fp = fopen("file1.txt", "w"); // create file
if (!fp)
{
perror("file1.txt");
return EXIT_FAILURE;
}
puts("Created file1.txt");
fclose(fp);
int rc = remove("file1.txt");
if (rc)
{
perror("remove");
return EXIT_FAILURE;
}
puts("Removed file1.txt");
fp = fopen("file1.txt", "r"); // Failure: file does not exist
if (!fp)
perror("Opening removed file failed");
rc = remove("file1.txt"); // Failure: file does not exist
if (rc)
perror("Double-remove failed");
return EXIT_SUCCESS;
}Возможный вывод:
Created file1.txt Removed file1.txt Opening removed file failed: No such file or directory Double-remove failed: No such file or directory
Справочные материалы
- Стандарт C23 (ISO/IEC 9899:2023):
- 7.21.4.1 Функция remove (с: TBD)
- Стандарт C17 (ISO/IEC 9899:2018):
- 7.21.4.1 Функция remove (с: TBD)
- Стандарт C11 (ISO/IEC 9899:2011):
- 7.21.4.1 Функция remove (с: 302)
- Стандарт C99 (ISO/IEC 9899:1999):
- 7.19.4.1 Функция remove (с: 268)
- Стандарт C89/C90 (ISO/IEC 9899:1990):
- 4.9.4.1 Функция remove
См. также
| переименовывает файл (функция) |
|
Документация C++ для remove |
|
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/c/io/remove