-

「Functions HI-TECH C STAT」の版間の差分

提供: HI-TECH C for CP/M Fan WIKI(JP)
移動先: 案内検索
(ページの作成:「<strong>STAT</strong> ==概要== #include <stat.h> int stat(char * name, struct stat * statbuf) ==詳細== このルーチンはnameで指定されたファイル...」)
 
(相違点なし)

2018年1月3日 (水) 14:03時点における最新版

STAT

概要

#include  <stat.h>

int stat(char * name, struct stat * statbuf)


詳細

このルーチンはnameで指定されたファイルの情報を返します。返される情報はオペレーティングシステムに依存していますが、ファイル属性(リードオンリーなど)バイト単位のファイルサイズ、ファイル変更、アクセスタイムなどをインクルードできます。 引数nameはファイル名でなければならず、DOSではパス名を、CP/Mではユーザー番号などです。引数statbufはstat.hで定義された、ファイルに関する情報で埋められた構造体のアドレスです。struct statの構造体は以下の通りです。

struct stat
{
 short    st_mode;  /* flags */
 long     st_atime; /* access time */
 long     st_mtime; /* modification time */
 long     st_size;  /* file size */
};

アクセス時間、変更時間(DOS下では両方が変更時間に設定されます)1970年、1月1日、00:00:00からの秒数になります。ctime() はこれを読みやすい値に変換します。 ファイルサイズはそれ自体が説明的です??フラグビットは以下の通りです。

フラグ 意味
S_IFMT ファイルタイプのマスク
S_IFDIR ファイルはディレクトリ
S_IFREG ファイルは標準ファイル
S_IREAD ファイルは読み込み可能
S_IWRITE ファイルは書き込み可能
S_IEXEC ファイルは実行可能
S_HIDDEN ファイルは隠しファイル
S_SYSTEM ファイルはシステムでマークされている
S_ARCHIVE ファイルは書き出されている??

Statは成功時に0、例えばファイルが見つからなかった時などの失敗時に-1を返します。

参照

ctime, creat, chmod