CodeNet / Языки программирования / C / C++ / Руководства и справочные материалы по C/C++ / Справочники по функциям / Справочник по функциям C/C++
getfat
getfat
Функция Получает информацию из таблицы размещения файлов указанного дисковода. Синтаксис #include <dos.h> void getfat(unsigned char drive, struct fatinfo *dtable); Файл, содержащий dos.h прототип Описание Функция getfat возвращает информацию из таблицы размещения файлов согласно спецификации устройства, заданной в параметре drive(0 = по умолчанию, 1=A:; 2=B:; и т.д.). Указатель dtable является адресом структуры fatinfo, которая заполняется информацией из таблицы. Структура fatinfo, заполняемая функцией getfat описывается следующим образом: struct fatinfo { char fi_sclus; /* секторов на кластер */ char fi_fatid; /* байт идентификации таблицы FAT (таблицы размещения файлов) int fi_nclus; /* количество кластеров */ int fi_busec; /* количество байтов в секто- ре */ }; Возвращаемое Нет. значение Переносимость Функция уникальна для DOS. Смотрите также getdfree, getfatd. Пример: #include<stdio.h> #include<conio.h> #include<dos.h> int main(void) { struct fatinfo diskinfo; int flag = 0; printf("Вставте дискету в дисковод 'A'\n"); getch(); getfat(1,&diskinfo); /* получение инф-ции о дисководе */ printf("Дисковод A:"); switch((unsigned char)diskinfo.fatid) { case 0xFD: printf("360 Кбайт, одинарной плотности\n"); break; case 0xF9: printf("5 1/4'' - 1.2 Mбайт или 3 1/2''- 720 Кбайт"); break; case 0xF0: printf("3 1/2 - 1.44Мбайт\n"); break; default: printf("Неформатирован\n"); flag = 1; } if(!flag) { printf("Секторов на кластер: %5d\n",diskinfo.fi_sclus); printf("Количество кластеров: %5d\n",diskinfo.fi_nclus); printf("Байт на сектор: %5d\n",diskinfo.fi_bysec); } return 0; }