Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

_creat

_creat


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

Синтаксис          #include <dos.h>
                   int _creat(const char * path, int attrib);

Файл, содержащий   io.h
прототип

Описание           _creat берет аргумент attrib -  слово атрибутов
                   DOS. Файл всегда открывается в двоичном режиме. При
                   успешном    создании    файла    указатель    файла
                   устанавливается  на  начало   этого   файла.   Файл
                   открывается сразу для чтения и записи.

                   Если файл    уже    существует,   то   его   размер
                   устанавливается   равным   0.   (Это   эквивалентно
                   удалению  файла  и  созданию нового файла с этим же
                   именем).

                   Аргумент attrib  в  _creat  может  быть  одной   из
                   следующих констант (определенных в dos.h):

                     FA_DRONLY   Только чтение.
                     FA_HIDDEN   Скрытый файл.
                     FA_SYSTEM   Системный файл.

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

                   В случае  ошибки  errno принимает одно из следующих
                   значений:

                     ENOENT - Маршрут или имя файла не найдены.
                     EMFILE - Слишком много открытых файлов.
                     EACCES - Отказ доступа.

Переносимость      _creat уникальна для DOS.

Смотрите также     _chmod, chsize, _close, close, creat, creatnew,
                   creattemp.

Пример:

#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;
}

Оставить комментарий

Комментарий:
можно использовать BB-коды
Максимальная длина комментария - 4000 символов.
 
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог