Функция
Создает новый файл или перезаписывает существующий.
Синтаксис
#include <dos.h>
int _creat(const char *path, int attrib);
Прототип
io.h
Описание
Функция _creat берет аргумент attrib (слово атрибутов DOS). Файл всегда открывается в двоичном режиме. При успешном создании файла указатель файла устанавливается в начало этого файла. Файл открывается сразу для чтения и записи. Если файл уже существует, то его размер устанавливается равным 0. Это эквивалентно удалению файла и созданию нового файла с этим же именем.
Возвращаемое значение
При успешном завершении _creat возвращает дескриптор нового файла, неотрицательное число. Иначе возвращается -1.
Переносимость
Уникальна для DOS.
Пример
#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;
}