Функция Получает информацию из таблицы размещения файлов
указанного дисковода.
Синтаксис #include
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.
Смотрите также getdfreegetfatd
Пример:
#include
#include
#include
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;
}