다음을 통해 공유


tmpfile_s

임시 파일을 만듭니다.버전입니다 tmpfile 와 보안 기능 향상에 설명 된 대로 CRT의 보안 기능.

errno_t tmpfile_s(
   FILE** pFilePtr
);

매개 변수

  • [out] pFilePtr
    주소 생성 된 stream에 대 한 포인터의 주소를 저장에 대 한 포인터입니다.

반환 값

이 작업이 성공 하면 0 반환 합니다 오류 코드 실패 시.

오류 조건

pFilePtr

반환 값

내용pFilePtr

NULL

EINVAL

변경 되지 않음

위의 매개 변수 유효성 검사 오류가 발생 하는 경우 잘못 된 매개 변수 처리기를의 설명에 따라 호출 됩니다 매개 변수 유효성 검사.실행을 계속 수 있으면 errno 으로 설정 EINVAL 및 반환 값이 EINVAL.

설명

tmpfile_s 함수는 임시 파일을 만들고 포인터를 해당 스트림에 배치는 pFilePtr 인수입니다.임시 파일은 루트 디렉터리에 만들어집니다.루트가 아닌 디렉터리에 임시 파일을 만들 수 있습니다 tmpnam_s 또는 tempnam 와 함께에서 통해.

파일을 열 수 없는 경우 tmpfile_s 씁니다 NULL 에 있는 pFilePtr 매개 변수.정상적으로, 또는 때 프로그램을 종료 하면 해당 파일을 닫을 때이 임시 파일이 자동으로 삭제 됩니다 _rmtmp 는 현재 작업 디렉터리 변경 되지 않는 가정 하는 호출 됩니다.임시 파일을 열에서 w+b (이진 읽기/쓰기) 모드입니다.

실패 하면 시도 하는 경우 발생할 수 있습니다 이상 TMP_MAX_S (STDIO을 참조 하십시오.H)를 호출tmpfile_s.

요구 사항

루틴

필수 헤더

tmpfile_s

<stdio.h>

추가 호환성 정보를 참조 하십시오. 호환성 소개에서 합니다.

예제

[!참고]

이 예제에서는 Windows Vista를 실행하기 위한 관리자 권한이 필요합니다.

// crt_tmpfile_s.c
// This program uses tmpfile_s to create a
// temporary file, then deletes this file with _rmtmp.
//

#include <stdio.h>

int main( void )
{
   FILE *stream;
   char tempstring[] = "String to be written";
   int  i;
   errno_t err;

   // Create temporary files.
   for( i = 1; i <= 3; i++ )
   {
      err = tmpfile_s(&stream);
      if( err )
         perror( "Could not open new temporary file\n" );
      else
         printf( "Temporary file %d was created\n", i );
   }

   // Remove temporary files.
   printf( "%d temporary files deleted\n", _rmtmp() );
}
  

해당 .NET Framework 항목

해당 사항 없음. 표준 C 함수를 호출할 수 있습니다 PInvoke. 자세한 내용은 플랫폼 호출 예제.

참고 항목

참조

스트림 I/O

_rmtmp

_tempnam, _wtempnam, tmpnam, _wtmpnam