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

Ваш аккаунт

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

Последние темы форума

Показать новые сообщения »

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

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

chsize

[ Оглавление ]
               CHSIZE
            
            #include <io.h>      требуется  только для  объявления
                                 функции
            
            int chsize(handle,size);
            int handle;          handle-р, ссылающийся на открытый
                                 файл
            long size;           новая длина файла в байтах
            
               Описание.
         
            
               Функция  chsize увеличивает или уменьшает файл, связанный с
         handle-ром, до размера, определяемого аргументом size. Файл  дол-
         жен  быть  открыт  в  режиме, который разрешает запись. Если файл
         увеличивается, к нему добавляются нулевые символы '\0'. Если файл
         уменьшается,  все  данные от конца укороченного файла до первона-
         чальной длины файла теряются.
            
               Возвращаемое значение.
            
               Функция chsize возвращает значение 0, если файл успешно из-
         менен.  Возвращаемое  значение  -1  свидетельствует  об ошибке  и
         errno устанавливается в одно из следующих значений:
                           
            ЗНАЧЕНИЕ             СМЫСЛ ЗНАЧЕНИЯ
                           
            EACCES         Заданный  файл  определен  только   для
                           чтения. Для версий MS DOS 3.0 и старших,
                           EACCES свидетельствует о принудительной
                           блокировке.(Определенный файл  заблоки-
                           рован для доступа)
                           
            EBADF          Неверный файловый handle
                           
            ENOSPC         На  устройстве не  осталось  свободного
                           места
            
               См.также close, creat, open.
            
               Пример:
            
            #include <io.h>
            #include <fcntl.h>
            #include <sys\types.h>
            #include <sys\stat.h>
            
            #define MAXSIZE 32768L
            
            int fh, result;
            .
            .
            .
            fh=open("data", O_RDWR|O_CREAT, S_IREAD|S_IWRITE);
      
            .
            .
            .
            /* перед закрытием файла нужно убедиться, что он
            ** не длиннее 32К
            */
            if (lseek(fh,LO,2)>MAXSIZE)
               result=chsize(fh,MAXSIZE);
            
      
               _CLEAR87
         
            
            #include <float.h>
            
            unsigned int _clear87();  получает  и  очищает слово
                                      статуса  плавающей точки
            
               Описание.
            
               Функция _clear87 получает и стирает слово статуса плавающей
         точки. Слово статуса плавающей точки является  комбинацией  слова
         статуса  8087/80287 и других состояний, обнаруживаемых 8087/80287
         handler-ом, таких как переполнение и потеря значимости стека пла-
         вающей точки.
            
               Возвращаемое значение.
            
               Биты в возвращаемом значении  обозначают  статус  плавающей
         точки.  Смотрите  include-файл <float.h> для полного описания би-
         тов, возвращаемых функцией _clear87.
               Замечание. Большинство из математических библиотечных функ-
         ций модифицирует слово статуса 8087/80287 с  непредсказуемым  ре-
         зультатом.  Возвращаемые  значения  функций  _clear87 и _status87
         становятся более достоверными после выполнения нескольких  опера-
         ций  с  плавающей  точкой  с известными состояниями слова статуса
         плавающей точки.
               См.также _control87, _status87.
            
               Пример:
            
            #include <stdio.h>
            #include<float.h>
            
            double a = 1e-40,b;
            float x,y;
            
            main()
              {
              printf("status=%.4x - clear\n",_clear87());
              y = a;
                
               /* запомненное в y является неточным и с потерянной  значи-
         мостью */
              printf("status=%.4xx - inexact, underflow\n",
                     _clear87());
              b = y;    /* y является неправильным */
              printf("status=%.4x - denormal\n", _clear87());
              }
            
      

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

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