C語(yǔ)言新建臨時(shí)文件和臨時(shí)文件名的方法
C語(yǔ)言mkstemp()函數(shù):建立臨時(shí)文件
頭文件:
#include <stdlib.h>
定義函數(shù):
int mkstemp(char * template);
函數(shù)說(shuō)明:mkstemp()用來(lái)建立唯一的臨時(shí)文件. 參數(shù)template 所指的文件名稱字符串中最后六個(gè)字符必須是XXXXXX. Mkstemp()會(huì)以可讀寫模式和0600 權(quán)限來(lái)打開該文件, 如果該文件不存在則會(huì)建立該文件. 打開該文件后其文件描述詞會(huì)返回. 文件順利打開后返回可讀寫的文件描述詞. 若果文件打開失敗則返回NULL, 并把錯(cuò)誤代碼存在errno 中.
錯(cuò)誤代碼:EINVAL 參數(shù)template 字符串最后六個(gè)字符非XXXXXX. EEXIST 無(wú)法建立臨時(shí)文件.
附加說(shuō)明:
參數(shù) template 所指的文件名稱字符串必須聲明為數(shù)組, 如:
char template[] = "template-XXXXXX";
千萬(wàn)不可以使用下列的表達(dá)方式
char *template = "template-XXXXXX";
范例
#include <stdlib.h> main() { int fd; char template[] = "template-XXXXXX"; fd = mkstemp(template); printf("template = %s\n", template); close(fd); }
執(zhí)行
template = template-lgZcbo
C語(yǔ)言mktemp()函數(shù):產(chǎn)生唯一臨時(shí)文件名
頭文件:
#include <stdlib.h>
定義函數(shù):
char * mktemp(char * template);
函數(shù)說(shuō)明:mktemp()用來(lái)產(chǎn)生唯一的臨時(shí)文件名. 參數(shù)template 所指的文件名稱字符串中最后六個(gè)字符必須是XXXXXX. 產(chǎn)生后的文件名會(huì)借字符串指針?lè)祷?
返回值:文件順利打開后, 指向該流的文件指針就會(huì)被返回. 如果文件打開失敗則返回NULL, 并把錯(cuò)誤代碼存在errno 中.
附加說(shuō)明:參數(shù) template 所指的文件名稱字符串必須聲明為數(shù)組,如:
char template[] = "template-XXXXXX";
不可用
char * template = "template-XXXXXX";
范例
#include <stdlib.h> main() { char template[] = "template-XXXXXX"; mktemp(template); printf("template=%s\n", template); }
- C語(yǔ)言中獲取文件狀態(tài)的相關(guān)函數(shù)小結(jié)
- C語(yǔ)言中用于修改文件的存取時(shí)間的函數(shù)使用
- C語(yǔ)言中建立和刪除文件連接的相關(guān)函數(shù)講解
- C語(yǔ)言讀取文件流的相關(guān)函數(shù)用法簡(jiǎn)介
- C語(yǔ)言中對(duì)文件最基本的讀取和寫入函數(shù)
- 使用C語(yǔ)言操作文件的基本函數(shù)整理
- C語(yǔ)言對(duì)組文件處理的相關(guān)函數(shù)小結(jié)
- C語(yǔ)言中的各種文件讀寫方法小結(jié)
- C語(yǔ)言讀寫配置文件的方法
- Windows系統(tǒng)下使用C語(yǔ)言編寫單線程的文件備份程序
相關(guān)文章
C語(yǔ)言編程數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)詳解小白篇
這篇文章主要介紹了數(shù)據(jù)結(jié)構(gòu)的基礎(chǔ),非常適合初學(xué)數(shù)據(jù)結(jié)構(gòu)的小白,有需要的朋友可以借鑒參考下,希望可以有所幫助,祝大家多多進(jìn)步,早日升職加薪2021-09-09C語(yǔ)言動(dòng)態(tài)內(nèi)存管理的實(shí)現(xiàn)
本文主要介紹了C語(yǔ)言動(dòng)態(tài)內(nèi)存管理的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-08-08C語(yǔ)言深入分析整形數(shù)據(jù)存儲(chǔ)
C語(yǔ)言中,我們經(jīng)常使用數(shù)據(jù)類型,那么整形數(shù)據(jù)在內(nèi)存中如何存儲(chǔ)?存儲(chǔ)方式是什么?如果你對(duì)這些內(nèi)容不太了解的話,相信看完這篇博客后,你會(huì)對(duì)整形數(shù)據(jù)的存儲(chǔ)有一個(gè)新的認(rèn)識(shí)。話不多說(shuō),我們進(jìn)入正題2022-08-08C++之std::vector刪除元素的幾種方式及區(qū)別說(shuō)明
這篇文章主要介紹了C++之std::vector刪除元素的幾種方式及區(qū)別說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08C語(yǔ)言數(shù)據(jù)結(jié)構(gòu)之模式匹配字符串定位問(wèn)題
這篇文章主要介紹了C語(yǔ)言數(shù)據(jù)結(jié)構(gòu)之模式匹配字符串定位問(wèn)題的相關(guān)資料,希望通過(guò)本文能幫助到大家,讓大家理解這部分內(nèi)容,需要的朋友可以參考下2017-10-10