tmpfile
建立暫存檔案。 因為更安全的版本,才能使用這個函式已被取代;請參閱 tmpfile_s。
FILE *tmpfile( void );
傳回值
如果成功,則 tmpfile 會傳回資料流的指標。 否則會傳回 NULL 指標。
備註
tmpfile 函式會建立暫存檔案並將指標傳回該資料流。 暫存檔案在根目錄中建立。 除了之外,要在該目錄中建立暫存檔案,請使用 fopen搭配使用 tmpnam 或 tempnam 。
如果無法開啟檔案, tmpfile 會傳回 NULL 指標。 這個暫存檔自動刪除時,只有在檔案關閉,也就是說,當程式通常時結束,或者,呼叫 _rmtmp 時,會假設,在目前的工作目錄不會變更。 暫存檔案在 w+b (二進位) 讀取/寫入模式下開啟。
失敗,則會發生您比更 TMP_MAX 嘗試衍生 (請參閱 STDIO.H) 與 tmpfile的呼叫。
需求
常式 |
必要的標頭 |
---|---|
tmpfile |
<stdio.h> |
如需其他相容性資訊,請參閱<簡介>中的相容性。
範例
注意事項 |
---|
您必須擁有系統管理員權限,才能在 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() );
}
.NET Framework 對等用法
不適用。若要呼叫標準 C 函式,請使用 PInvoke。如需詳細資訊,請參閱平台叫用範例。