getdfree
dos.h:インデックス への移動
ヘッダーファイル
dos.h
カテゴリ
ディレクトリ制御ルーチン,その他のルーチン
プロトタイプ
void getdfree(unsigned char drive, struct dfree *dtable);
説明
ディスクの空き領域を取得します。
getdfree は,drive のドライブ指定子(デフォルトの場合は 0,A の場合は 1 など)を受け取り,dtable が指す dfree 構造体にディスク属性を設定します。
dfree 構造体は,次のように定義されています。
struct dfree {
unsigned df_avail; /* 使用できるクラスタ数 */
unsigned df_total; /* 全クラスタ数 */
unsigned df_bsec; /* セクタ当たりのバイト数 */
unsigned df_sclus; /* クラスタ当たりのセクタ数 */
};
戻り値
getdfree は値を返しません。エラーの場合は,dfree 構造体の df_sclus に(unsigned)-1 が設定されます。
例
#include <stdio.h>
#include <dos.h>
#include <process.h>
int main(void)
{
struct dfree free;
long avail;
getdfree(0, &free);
if ( free.df_sclus == -1)
{
printf("Error in getdfree() call\n");
exit(1);
}
avail = (long) free.df_avail
* (long) free.df_bsec
* (long) free.df_sclus;
printf("The current drive has %ld bytes available\n", avail);
return 0;
}
移植性
POSIX | Win32 | ANSI C | ANSI C++ |
---|---|---|---|
+ |