C言語 一時ファイル名(テンポラリファイル名)の作成 - stdio.h - [ tmpnam ]
2008.10.02 Thursday | by LRESULT
テンポラリファイル名(一時ファイル名)の作成には、tmpnam()を使います。
テンポラリファイル名とは、既存のファイルと重複しないような
ユニークな名前で、一時処理する為のファイル名です。
書式 | char *tmpnam( char *name ) |
---|---|
機能 | 一時ファイル名(テンポラリファイル名)の作成 |
引数 | char *name : L_tmpnam バイト数の配列に一時ファイル名を格納。 |
戻り値 | 引数にNULLを入れると、戻り値に一時ファイル名を返します。 |
L_tmpnam とは、一時ファイル名のバイト数の最大値で、
#define L_tmpnam で定義されています。
また、一時ファイル名を作成できる上限個数は、
#define TMP_MAX で定義されています。
一時ファイル名を5個作成してみます。 |
---|
#include <stdio.h> int main(void) { int i; char fname[ L_tmpnam ]; for( i=0; i<5; i++ ){ tmpnam( fname ); printf( "%s¥n", fname ); } return 0; } |
¥s3eo. ¥s3eo.1 ¥s3eo.2 ¥s3eo.3 ¥s3eo.4 |
---|
VC8の場合は、上記のように表示されました。 |
TMP1.$$$ TMP2.$$$ TMP3.$$$ TMP4.$$$ TMP5.$$$ |
---|
C++Builderの場合は、上記のように表示されます。 というわけで、一時ファイル名を取得する事が出来ました。 ちなみに、ソースファイルがあるフォルダ内に、「TMP1.$$$」ファイルを作成してから 実行すると、「TMP1.$$$」というファイル名はキッチリ外されてました。 |