_umask
既定のファイルのアクセス許可マスクを設定します。 この関数のセキュリティが強化されたバージョンについては、「_umask_s」を参照してください。
int _umask(
int pmode
);
パラメーター
- pmode
既定のアクセス許可の設定。
戻り値
_umask は pmodeの以前の値を返します。 エラーの戻り値はありません。
解説
モードへの現在のプロセスのファイル アクセス許可が pmodeマスクで指定した _umask 関数のセット*。*ファイルのアクセス許可マスクは _creat、_open、または _sopenによって作成された新しいファイルのアクセス許可設定を変更します。 マスクに 1 は 0 に、ファイルが要求するアクセス許可値の対応するビットが設定されています (拒否) です。 マスクには、対応する 0 ビット、不変少なくなります。 新しいファイルのアクセス許可は、ファイルが初めて閉じるまで設定されません。
整数式 pmode は SYS\STAT.H で次の記号定数 1 のいずれかまたは両方を定義して含まれています:
_S_IWRITE
許可される書き込み。_S_IREAD
許可される読み取り。_S_IREAD | _S_IWRITE
許可されるの読み取りと書き込み。
定数は、両方とも提供されると、ビットごとの OR 演算子で結合されます。 | ). pmode の引数が _S_IREADは、読み取ることはできません (ファイルは書き込み専用です)。 pmode の引数が _S_IWRITEの場合、書き込むことはできません (ファイルは読み取り専用です。 たとえば、書き込みビットがマスクに設定されている場合、新しいファイルが読み取り専用です。 MS-DOS および Windows オペレーティング システムと、すべてのファイルを読み取ることができることに注意してください; 書き込み専用アクセス許可を与えることはできません。 したがって、_umask の読み取り専用ビットを設定すると、ファイルのモードには影響しません。
pmode がマニフェスト定数の 1 種類の組み合わせで、別の一連の定数を組み込む、それらは無視されます。
必要条件
ルーチン |
必須ヘッダー |
---|---|
_umask |
<io.h、sys> </stat.h、sys/>types.h <> |
互換性の詳細については、「C ランタイム ライブラリ」の「互換性」を参照してください。
ライブラリ
C ランタイム ライブラリのすべてのバージョン。
使用例
// crt_umask.c
// compile with: /W3
// This program uses _umask to set
// the file-permission mask so that all future
// files will be created as read-only files.
// It also displays the old mask.
#include <sys/stat.h>
#include <sys/types.h>
#include <io.h>
#include <stdio.h>
int main( void )
{
int oldmask;
/* Create read-only files: */
oldmask = _umask( _S_IWRITE ); // C4996
// Note: _umask is deprecated; consider using _umask_s instead
printf( "Oldmask = 0x%.4x\n", oldmask );
}
同等の .NET Framework 関数
System::IO::File::SetAttributes