Russian Belarusian English German Japanese Ukrainian

Rashka.studio - игры и приложения для Android! Заходи, ждём тебя =)

Creat

CuBook05

Функция

Создает новый файл или перезаписывает существующий.
 
Синтаксис

#include <sys\stat.h>
int creat(const char *path, int amode);
 
Прототип

io.h
 
Описание

Функция creat создает новый файл или подготавливает для перезаписи существующий файл, имя которого находится в аргументе path. Функция amode применяется только для заново создаваемых файлов. Файл создается в режиме, указываемом в глобальной переменной _fmode (O_TEXT или O_BINARY). Если файл уже существует и установлен атрибут записи, функция creat усекает файл до длины 0 байт, оставляя неизменными атрибуты файлов. Если существующий файл имеет атрибут «только чтение», вызов функции creat потерпит неудачу и файл останется неизменным. Вызов функции creat проверяет только бит S_IWRITE в слове режима доступа amode. Если данный бит равен 1, файл имеет разрешение на запись. Если бит равен 0, то для файла разрешено только чтение. Все остальные атрибуты DOS устанавливаются равными нулю.
 
Возвращаемое значение

При успешном завершении возвращается неотрицательное целое число - новый дескриптор файла. Иначе возвращается значение -1.
 
Переносимость

Поддерживается в системах UNIX.
 
Пример

#include<sys\stat.h>
#include<process.h>
#include<string.h>
#include<stdio.h>
#include<fcntl.h>
#include<errno.h>
#include<io.h>

int main(void)
{
int handle;
char buf[] = "0123456789";
if((handle = _creat("DUMMY.FIL",0)) < 0)
{
switch(errno)
{
case ENOENT: printf("Ошибка:Маршрут или имя файла не найдены.\n");
break;
case EMFILE: printf("Ошибка:Слишком много открытых файлов.\n");
break;
case EACCES: printf("Ошибка: Отказ доступа\n");
break;
default: printf("Ошибка при создании файла\n");
break;
}
exit(1);
}
write(handle,buf,strlen(buf)+1);
close(handle);
return 0;
}
Если заметили ошибку, выделите фрагмент текста и нажмите Ctrl+Enter

Добавить комментарий