如果无法打开该文件,tmpfile_s会将NULL写入pFilePtr参数。 当文件关闭、程序正常终止或调用_rmtmp时,此临时文件将被自动删除(假定当前工作目录未更改)。 临时文件在 w+b(二进制读/写)模式下打开。 如果尝试使用tmpfile_s执行超过TMP_MAX_S次调用(请参阅 STDIO.H),则可能失败。
本文将详细介绍 tmpfile_s 的用法,包括创建临时文件、写入数据、读取数据、关闭文件等操作。 创建临时文件 tmpfile_s 函数用于创建一个唯一的临时文件,并返回该文件的文件指针。创建临时文件的代码示例如下: FILE*tmpfile; errno_t err=tmpfile_s(&tmpfile); if(err==0){ printf("临时文件创建成功!"); //...
errno_t tmpfile_s( FILE** pFilePtr ); Parameters [out] pFilePtr The address of a pointer to store the address of the generated pointer to a stream. Return Value Returns 0 if successful, an error code on failure. Error Conditions
写了一小段简单的tmpfile调用,然后跟踪调试,在tmpfile_s内部也没能发现这个临时文件的路径,当然,通过stream->_tmpfname,可以看到一个临时文件的名称,但是看不到路径;根据这个名称到WINDOWS\TEMP(或者C:\Users\xxx\AppData\Local\Temp)路径下去查找,也没有找到类似名称的文件。 voidTesttempfileFunc() { FILE*st...
// 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...
// 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...
2)同(1),但至少可以打开TMP_MAX_S个文件(此极限可能与tmpnam_s共享),而若streamptr为空指针,则调用当前安装的制约处理函数。 同所有边界检查函数,tmpfile_s,仅若实现定义__STDC_LIB_EXT1__且用户在包含<stdio.h>前定义__STDC_WANT_LIB_EXT1__为整数常量 1 才保证可用。
errno_t tmpfile_s(FILE * restrict * restrict streamptr); (2) (自C11以来) 1)创建并打开一个临时文件。打开文件作为更新二进制文件(如如果由fopen与"wb+"模式)。该文件的文件名在文件系统中保证是唯一的。至少TMP_MAX文件可能在程序生命周期中打开(此限制可能会与之共享tmpnam并可能会受到进一步限制FOPEN_...
2)与(1)相同,只是至少TMP_MAX_S可以打开文件(可以共享限制tmpnam_s),如果streamptr是空指针,则调用当前安装的约束处理程序函数。作为所有的边界检查函数,tmpfile_s只能保证__STDC_LIB_EXT1__是由实现定义的,并且如果用户在包含之前定义__STDC_WANT_LIB_EXT1__为整数常量。1<stdio.h>当程序正常退出时,由该函...
FILE * tmpfile(void); (1) errno_t tmpfile_s(FILE * restrict * restrict streamptr); (2) (自C11以来) 1)创建并打开一个临时文件。打开文件作为更新二进制文件(如如果由fopen与"wb+"模式)。该文件的文件名在文件系统中保证是唯一的。至少TMP_MAX文件可能在程序生命周期中打开(此限制可能会与之...