tmpfile
Membuat file sementara. Fungsi ini tidak digunakan lagi karena versi yang lebih aman tersedia; lihat tmpfile_s
.
Sintaks
FILE *tmpfile( void );
Nilai hasil
Jika berhasil, tmpfile
mengembalikan penunjuk aliran. Jika tidak, ia mengembalikan NULL
penunjuk.
Keterangan
Fungsi ini membuat file sementara dan mengembalikan penunjuk ke aliran tersebut tmpfile
. File sementara dibuat di direktori akar. Untuk membuat file sementara di direktori selain root, gunakan tmpnam
atau tempnam
dengan fopen
.
Jika file tidak dapat dibuka, tmpfile
mengembalikan NULL
penunjuk. File sementara ini secara otomatis dihapus ketika file ditutup, ketika program berakhir secara normal, atau ketika _rmtmp
dipanggil, dengan asumsi bahwa direktori kerja saat ini tidak berubah. File sementara dibuka dalam mode w+b (baca/tulis biner).
Kegagalan dapat terjadi jika Anda mencoba lebih dari TMP_MAX (lihat STDIO. H) memanggil dengan tmpfile
.
Persyaratan
Rutin | Header yang diperlukan |
---|---|
tmpfile |
<stdio.h> |
Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas.
Contoh
Catatan
Contoh ini memerlukan hak administratif untuk dijalankan pada Windows Vista.
// crt_tmpfile.c
// compile with: /W3
// This program uses tmpfile to create a
// temporary file, then deletes this file with _rmtmp.
#include <stdio.h>
int main( void )
{
FILE *stream;
int i;
// Create temporary files.
for( i = 1; i <= 3; i++ )
{
if( (stream = tmpfile()) == NULL ) // C4996
// Note: tmpfile is deprecated; consider using tmpfile_s instead
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() );
}
Temporary file 1 was created
Temporary file 2 was created
Temporary file 3 was created
3 temporary files deleted