Синтаксис
#include<stdio.h>
int rename(const char *oldname, const char *newname);
Прототип
stdio.h
Описание
Функция rename изменяет имя файла с oldname на newname. Если спецификация дисковода включена в имя newname, то она должна быть той же, что и в oldname.
Директории в маршруте (path) не обязательно должны быть теми же самыми, поэтому функцию rename можно использовать для пересылки файла из одной директории в другую. Применять шаблоны не разрешается.
Возвращаемое значение
При успешном переименовании файла функция rename возвращает 0. В случае ошибки, возвращается -1, а глобальная переменная errno получает одно из следующих значений:
ENDENT - маршрут или имя файла не найдены.
EACCES - отказ доступа.
ENOTSAM - не то же самое устройство.
Переносимость
Функция rename поддерживается стандартом ANSI C.
Пример
#include <stdio.h>
int main(void)
{
char oldname[80],newname[80];
/* запросить имя переименовываемого файла, и новое имя */
printf("Имя переименовываемого файла:");
gets(oldname);
promtf("Новое имя:");
gets(newname);
if(rename(oldname,newname) == 0)
printf("Файл переименован с %s в %s\n",oldname,newname);
else
perror("rename");
return 0;
}