_umask

設定的預設權限的檔案遮罩。更安全版本之這個函式是可使用; see _umask_s.

int _umask(
   int pmode 
);

參數

  • pmode
    預設的使用權限設定。

傳回值

_umask先前的值會傳回pmode。沒有任何錯誤傳回。

備註

_umask函式會以指定的模式來設定目前的處理序的權限的檔案遮罩pmode*.* 檔案使用權限遮罩修改所建立的新檔案的權限設定_creat, _open,或_sopen。如果遮罩位元為 1,則會將對應的位元中的檔案要求的權限的值設定為 0 (不允許的)。對應的位元如果遮罩位元為 0 時,會保持不變。未設定為新的檔案的權限設定,直到第一次關閉檔案。

整數運算式pmode包含一或多個下列資訊清單定義的常數,在 SYS\STAT 中。H:

  • _S_IWRITE
    允許使用的筆跡。

  • _S_IREAD
    讀取允許。

  • _S_IREAD | _S_IWRITE
    允許讀取與寫入。

當有兩個常數時,它們加入以位元 OR 運算子 ( | ).如果pmode引數是_S_IREAD,不允許讀取 (該檔案是唯寫)。如果pmode引數是_S_IWRITE,不允許寫入 (該檔案是唯讀屬性)。比方說,如果寫入的位元遮罩中設定,任何新的檔案將會是唯讀屬性。請注意使用 MS-DOS 與 Windows 作業系統中,所有檔案都都可讀取 ; 您不能授與唯寫屬性的權限。因此,設定 [位元與讀取_umask不會影響檔案的模式。

如果pmode不是其中一個資訊清單常數的組合,或包含其他的組的常數,此函式就只是忽略這種情況。

需求

常式

所需的標頭

_umask

<io.h>,<sys/stat.h>,<sys/types.h>

其他的相容性資訊,請參閱相容性在簡介中。

文件庫

所有版本的 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

請參閱

參考

檔案處理

低階 I/O

_chmod _wchmod

_creat _wcreat

_mkdir _wmkdir

_open _wopen