_umask
기본 파일 사용 권한 마스크를 설정합니다. 이 함수의 보다 안전한 버전은 다음을 참조하세요 _umask_s
.
구문
int _umask( int pmode );
매개 변수
pmode
기본 사용 권한 설정입니다.
반환 값
_umask
는 pmode
의 이전 값을 반환합니다. 오류 반환이 없습니다.
설명
함수는 _umask
현재 프로세스의 파일 사용 권한 마스크를 지정한 모드 pmode
로 설정합니다. 파일 사용 권한 마스크는 _creat
, _open
또는 _sopen
에서 생성한 새 파일의 사용 권한 설정을 수정합니다. 마스크의 비트가 1이면 파일의 요청된 사용 권한 값에서 해당하는 비트가 0(허용되지 않음)으로 설정됩니다. 마스크의 비트가 0이면 해당하는 비트는 변경되지 않고 그대로 유지됩니다. 새 파일에 대한 권한 설정은 파일이 처음으로 닫힙니다.
정수 식 pmode
은 다음에 정의된 SYS\STAT.H
다음 매니페스트 상수 중 하나 또는 둘 다를 포함합니다.
pmode |
설명 |
---|---|
_S_IWRITE |
쓰기를 허용합니다. |
_S_IREAD |
읽기를 허용합니다. |
_S_IREAD | _S_IWRITE |
읽기 및 쓰기를 허용합니다. |
두 상수가 모두 지정되면 비트 OR 연산자( |
)와 조인됩니다. 인수인 pmode
_S_IREAD
경우 읽기가 허용되지 않습니다(파일은 쓰기 전용). 인수인 pmode
_S_IWRITE
경우 쓰기가 허용되지 않습니다(파일은 읽기 전용). 예를 들어 마스크에 쓰기 비트가 설정되어 있으면 모든 새 파일은 읽기 전용이 됩니다. MS-DOS 및 Windows 운영 체제에서는 모든 파일을 읽을 수 있습니다. 쓰기 전용 권한을 부여할 수 없습니다. 따라서 _umask
를 사용하여 읽기 비트를 설정해도 파일 모드에는 아무런 변화가 없습니다.
매니페스트 상수 중 하나의 조합이 아니거나 대체 상수 집합을 통합하는 경우 pmode
함수는 이를 무시합니다.
기본적으로 이 함수의 전역 상태는 애플리케이션으로 범위가 지정됩니다. 변경하려면 CRT의 전역 상태를 참조하세요.
요구 사항
함수 | 필수 헤더 |
---|---|
_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 );
}
Oldmask = 0x0000
참고 항목
파일 처리
하위 수준 I/O
_chmod
, _wchmod
_creat
, _wcreat
_mkdir
, _wmkdir
_open
, _wopen