Функция Получает информацию о наличии свободного места
на диске.
Синтаксис #include
void getdfree(unsigned char drive,
struct dfree *dtable);
Файл, содержащий dos.h
прототип
Описание Функция getdfree просматривает устройство, задава-
емое параметром drive (0= по умолчанию, 1=A, и т.
д.) и заполняет структуру dfree с адресным указа-
телем dtable характеристиками соответствующего
диска.
Структура dfree описывается следующим образом:
struct dfree {
unsigned df_avail; /* свободные кластеры */
unsigned df_total; /* общее количество клас-
теров */
unsigned df_bsec; /* байтов на сектор */
unsigned df_sclus; /* секторов на кластер */
};
Возвращаемое Функция getdfree не возвращает никакого значения.
значение В случае ошибки параметру df_sclus в структуре
dfree присваивается значение 0xFFFF.
Переносимость Функция уникальна для DOS.
Смотрите также getfatgetfatd
Пример:
#include
#include
#include
#include
int main(void)
{
struct dfree free;
long avail;
int drive;
drive = getdisk();
getdfree(dreve+1,&free);
if(free.df_clus == 0xFFFF)
{
printf("Ошибка getdfree\n");
exit(1);
}
avail = (long) free.df_avail * (long) free.df_bsec *
(long) free.df_sclus;
printf("На диске %c имеется %ld свободных байт\n",'A'+drive,avail);
return 0;
}