io是標(biāo)準(zhǔn)庫(kù),一般涉及到系統(tǒng)的函數(shù),而stdio有系統(tǒng)也有標(biāo)準(zhǔn)輸出輸入函數(shù),fcntl是關(guān)于一些常數(shù)的定義,
成都創(chuàng)新互聯(lián)公司網(wǎng)站建設(shè)公司,提供網(wǎng)站制作、成都做網(wǎng)站,網(wǎng)頁(yè)設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);可快速的進(jìn)行網(wǎng)站開(kāi)發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛(ài)的網(wǎng)站,是專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來(lái)合作!
首先程序并非在 return 時(shí)刻就結(jié)束運(yùn)行咯,只是你自己寫(xiě)的代碼的部分結(jié)束運(yùn)行而已。如果你調(diào)試 windows 的程序,你會(huì)發(fā)現(xiàn)在 main 函數(shù)外層還有個(gè) __main 函數(shù)包裹著,當(dāng)然它會(huì)在結(jié)束的時(shí)刻調(diào)用一些別的函數(shù)將數(shù)據(jù)寫(xiě)入到文件里。包括動(dòng)態(tài)庫(kù)的載入,你的代碼里也沒(méi)有吧。你想想,你也沒(méi)寫(xiě) scanf 這些函數(shù)到你的程序里,那這些又是怎么樣運(yùn)行的呢。如果你想要實(shí)現(xiàn)相似的內(nèi)容,可以試試 atexit 函數(shù)
理論上是可以自定義的,但是最好使用 sizeof 進(jìn)行計(jì)算。
比如
fwrite(data,sizeof(data[0]),?size_t?count,?FILE*?stream);
如果是C語(yǔ)言調(diào)用stdio.h庫(kù)函數(shù)的話使用fseek設(shè)置文件指針,指向指定的位置,然后再用fprintf或者fwrite將數(shù)據(jù)寫(xiě)入文件中。如果是C語(yǔ)言調(diào)用windows.h庫(kù)函數(shù)的話則調(diào)用SetFilePointer設(shè)置文件指針指向指定位置,之后再調(diào)用WriteFile將數(shù)據(jù)寫(xiě)入文件。
fd文件描述符,打開(kāi)的文件都有一個(gè)fd,fd對(duì)應(yīng)內(nèi)存中文件管理數(shù)據(jù)結(jié)構(gòu),也就是很多國(guó)人寫(xiě)的教材中所謂的FCB(文件控制塊),類(lèi)unix系統(tǒng)的文件IO操作有關(guān)的系統(tǒng)調(diào)用都使用fd作為其參數(shù),如write,read,dup,dup2,fcntl和訪問(wèn)文件屬性信息的函數(shù)之類(lèi)的,因此,fd類(lèi)似windows平臺(tái)的文件操作API所使用的文件句柄。c語(yǔ)言中文件io操作的庫(kù)函數(shù)是基于FILE結(jié)構(gòu),F(xiàn)ILE只是對(duì)file descriptor做了封裝。記住 stdin對(duì)應(yīng)的fd為0,stdout為1,stderr為2,如果你打開(kāi)的文件的fd3,說(shuō)明出錯(cuò)了。理解否?
printf根據(jù)傳入?yún)?shù)轉(zhuǎn)換成字符串,然后輸出到該進(jìn)程的標(biāo)準(zhǔn)輸出緩沖里,當(dāng)緩沖滿或調(diào)用flush(),操作系統(tǒng)再把緩沖里的數(shù)據(jù)進(jìn)行處理,在默認(rèn)情況下標(biāo)準(zhǔn)輸出是控制臺(tái)顯示,這時(shí)操作系統(tǒng)把緩沖里的數(shù)據(jù)顯示出來(lái)。
malloc調(diào)用的是操作系統(tǒng)的HeapAlloc()函數(shù),先進(jìn)行安全檢測(cè)和記錄,再調(diào)用HeapAlloc()申請(qǐng)內(nèi)存空間
網(wǎng)站名稱:c語(yǔ)言文件io庫(kù)函數(shù) 文件io編程
標(biāo)題來(lái)源:http://jinyejixie.com/article36/dochpsg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、網(wǎng)站營(yíng)銷(xiāo)、網(wǎng)站導(dǎo)航、網(wǎng)站收錄、靜態(tài)網(wǎng)站、標(biāo)簽優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
營(yíng)銷(xiāo)型網(wǎng)站建設(shè)知識(shí)