std::tmpnam

您所在的位置:网站首页 mkstemp函数 std::tmpnam

std::tmpnam

2023-11-19 23:00| 来源: 网络整理| 查看: 265

  C++ 语言 标准库头文件 自立与有宿主实现 具名要求 语言支持库 概念库 (C++20) 诊断库 工具库 字符串库 容器库 迭代器库 范围库 (C++20) 算法库 数值库 本地化库 输入/输出库 文件系统库 (C++17) 正则表达式库 (C++11) 原子操作库 (C++11) 线程支持库 (C++11) 技术规范  输入/输出库 I/O 操纵符 C 风格 I/O 缓冲 basic_streambuf basic_filebuf basic_stringbuf strstreambuf(C++98 中弃用) basic_syncbuf(C++20) 流 抽象 ios_base basic_ios basic_istream basic_ostream basic_iostream 文件 I/O basic_ifstream basic_ofstream basic_fstream 字符串 I/O basic_istringstream basic_ostringstream basic_stringstream 数组 I/O istrstream(C++98 中弃用) ostrstream(C++98 中弃用) strstream(C++98 中弃用) 同步的输出 basic_osyncstream(C++20) 类型 streamoff streamsize fpos 错误类别接口 iostream_category(C++11) io_errc(C++11)  C 风格 I/O 类型与对象 FILE fpos_t stdinstdoutstderr 函数 文件访问 fopen freopen fclose fflush fwide setbuf setvbuf 直接输入/输出 fread fwrite 无格式输入/输出 fgetc fgets fputc fputs getchar gets(C++14 前) putchar puts ungetc fgetwc fgetws fputwc fputws getwchar putwchar ungetwc 有格式输入 scanffscanfsscanf vscanfvfscanfvsscanf(C++11)(C++11)(C++11) wscanffwscanfswscanf vwscanfvfwscanfvswscanf(C++11)(C++11)(C++11) 有格式输出 printffprintfsprintfsnprintf(C++11) vprintfvfprintfvsprintfvsnprintf(C++11) wprintffwprintfswprintf vwprintfvfwprintfvswprintf 文件定位 ftell fgetpos fseek fsetpos rewind 错误处理 clearerr feof ferror perror 文件上的操作 remove rename tmpfile tmpnam   定义于头文件 char* tmpnam( char* filename );

创建不指名当前存在的文件的独有文件名,并将它存储于 filename 所指向的字符串。函数足以生成至多 TMP_MAX 个独有的文件名,但其一些或全部可能已在使用中,从而不适合作为返回值。

std::tmpnam 修改静态状态,而且不要求为线程安全。

参数 filename - 指向足以保有至少 L_tmpnam 字节的字符数组的指针,将以数组为结果缓冲区。若传递空指针,则返回指向内部静态缓冲区的指针。 返回值

若 filename 不是空指针则为 filename 。否则为指向内部静态缓冲区的指针。若不能生成适合的文件名,则返回空指针。若无法生成适合文件名,则返回空指针。

注解

尽管 std::tmpnam 所生成的文件名难以猜测,却可能是另一个进程在 std::tmpnam 返回的时刻和此函程序试图使用返回的名称创建文件之间创建的文件的名称。标准函数 std::tmpfile 和 POSIX 函数 mkstemp 无此问题(仅使用 C 标准库创建一个独有的目录仍然要求使用 std::tmpnam )。

POSIX 系统额外定义名称类似的函数 tempnam() ,它提供对目录的选择(默认是可选定义的宏 P_tmpdir )。

示例 运行此代码 #include #include #include   int main() { std::string name1 = std::tmpnam(nullptr); std::cout


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3