999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

“文件”的趣味學(xué)習(xí)法探究

2015-11-18 02:02:36程振
亞太教育 2015年35期
關(guān)鍵詞:趣味

程振

?

“文件”的趣味學(xué)習(xí)法探究

程振

摘要:在學(xué)習(xí)計算機C語言的過程中,經(jīng)常會使用到C語言中的讀寫文件,在C語言中,眾多文件在操作的過程中都是通過庫函數(shù)來實現(xiàn)的,這里的庫函數(shù)主要分為讀和寫兩種操作。但是,用函數(shù)來操作“文件”可能會略顯枯燥,所以,在學(xué)習(xí)C語言的過程中,應(yīng)當掌握趣味學(xué)習(xí)“文件”,各種函數(shù)在趣味的性質(zhì)下也顯得不再乏味。本文對一些有關(guān)文件操作的函數(shù)使用及對比做出了一定闡述。

關(guān)鍵詞:趣味;C語言;文件

C語言中所有文件操作函數(shù)主要有fopen、fwrite、fread、fgetc、fputc、fscanf、fprintf、ftell、fseek等,雖然看上去略顯復(fù)雜,但只有充滿學(xué)習(xí)的動力就能將其很好的掌握,下面我們就來趣味解讀以下這些函數(shù)。

一、流式文件操作

上述的幾種函數(shù)基本上都是流式的文件操作,流式文件中構(gòu)成文件的最基本的單位是字符,流式文件也就是有序字符的集合,它的長度正是這個文件中所有的字符的個數(shù),所以,流式文件又叫做字符流文件。流式文件沒有具體的結(jié)構(gòu),并且管理起來也比較簡單,下面我們就介紹幾個流式文件:

1.fopen(打開文件)與該打開文件fopen相關(guān)的函數(shù)就是open,fclose,它的表頭文件是#include,其中的定義函數(shù)為FILE * fopen(const char * path,const char * mode),每一個函數(shù)都需要一個函數(shù)說明,該打開文件的參數(shù)path字符串包含即將要打開的文件路徑和它相應(yīng)的文件名,參數(shù)mode字符串就是所代表的流形態(tài)。其中mode的文件打開方式有以下幾種:r(read);w(write);a(append);t(text);b(banary);+。他們的意思依次是讀、寫、追加、文本文件、二進制文件、讀和寫。在打開文件的時候,如果文件能夠很順利的打開,則會返回到該流的相應(yīng)文件指針,如果文件無法打開則會返回到NULL,這里就會存在一個錯誤代碼errno。

2.fread和fwrite函數(shù)。這兩個函數(shù)可以對數(shù)據(jù)進行塊的操作,fread函數(shù)的一般調(diào)用形式是(buffer,size,count,fp);而fwrite函數(shù)的一般調(diào)用形式是(buffer,size,count,fp)。下面我們就對這兩個調(diào)用形式里的調(diào)用因素進行解釋說明:

(1)buffer。Buffer是指針的意思,在fread函數(shù)中,buffer是它在載入數(shù)據(jù)的時候能夠存放數(shù)據(jù)的地方,然而對于fwrite來講,則只是輸出數(shù)據(jù)的地址。(2)size。它所代表的是應(yīng)當讀寫的字節(jié)數(shù)目。

(3)count。這是相對于size而言的,應(yīng)當讀寫多少個size字節(jié)的數(shù)據(jù)項。

(4)fp。意義很簡單,記住,它是文件型指針。

在C語言中,還相應(yīng)提供了一整塊數(shù)據(jù)的讀寫函數(shù),也就是可以用來讀寫出一整組的數(shù)據(jù)。比如一個數(shù)組元素和一個結(jié)構(gòu)變量的值等。再例如fread(fa,4,5,fp);它所表達的意思是從fp所代表的文件中,每一次讀取4個字節(jié)送入到fa實數(shù)組中去,并連續(xù)讀取5次,也就是這5個實數(shù)都被讀取到fa中。

3.fgetc和fputc。這兩個函數(shù)是字符讀寫函數(shù),fgetc函數(shù)(getc函數(shù))的一般調(diào)用形式是ch=fgetc(fp),它們的用途可謂是十分重要,因為我們操作文件的主要目的就是為了讀取文件,它的作用就是從指定的文件中讀入一個字符,也就是從fp所指的文件中能夠讀出一個字符并賦給ch;在返回值的過程中,如果成功的話就能夠返回到所得到的字符上去,如果失敗的話則返回EOF(-1)。fputc函數(shù)的一般調(diào)用形式是fputc(ch,fp);它的作用不同于fgetc函數(shù),它的作用是將一個字符寫到磁盤上的文件中去,也就是能夠?qū)⑦@其中的ch輸出到fp所指的文件中去;在返回值方面,如果成功的話就輸出相應(yīng)的字符,如果失敗的話就返回EOF(-1)。上述函數(shù)就是我所選取的流式文件中的幾種,下面我們來對直接I/O文件操作進行一些闡述。

二、直接I/O文件操作

直接I/O文件操作是C語言中的另一種文件的操作模式,它和流式文件有很大的不同,它是通過直接存取文件來完成對文件的處理的,然而我們上述的流式文件操作則是通過緩沖區(qū)的特征來進行的。下面,我們就對直接I/O文件操作中的一些函數(shù)進行闡述,找一找它與流式文件的相同點和不同點:

1.open函數(shù)。在打開文件的同時讓它返回到相應(yīng)的句柄中,假如失敗的話,隨后就要返回小于零的數(shù)值,它的原型是int open(const char *path,int access[,unsigned mode]);這里面所涉及到的參數(shù)path就是將要打開的一個文件名,access就是其中所要打開的模式,mode是可選擇的項目。該函數(shù)主要用于表示文件的屬性是什么,在UNIX系統(tǒng)中比較常用,但是在DOS/WINDOWS這個參數(shù)中也并沒有什么具體的意義。例如,int handle=open(“c:msdos.sys”,O_BINARY|O_CREAT|O_ WRITE)。

2.close函數(shù)。看到英文,想必大家都很熟悉,是“關(guān)閉”的意思,該函數(shù)代表關(guān)閉一個句柄,它的原型是int close(int handle)。假如在返回的過程中成功,就把相應(yīng)的數(shù)值返回到0.比如:close(handle)。

3.Iseek函數(shù)。這個函數(shù)所代表的意思就是將文件定位到指定的位置,它的原型是long lseek(int handle,long offset,int fromwhere);其中的參數(shù)offset是移動的量的多少,fromwhere則是移動的位置變化是怎么樣的,在這個函數(shù)中要注意SEEK_CUR代表文件當前的位置,SEEK_END代表文件的末尾。舉一個簡單的例子:lseek(handle,-1234L,SEEK_CUR);//它的意思就是將存取的位置從現(xiàn)在的位置向前面移動1234個字節(jié)。x=lseek(hnd1,0L,SEEK_END);//的意思是將存取的位置移動到文件的最尾端,這里的x=文件尾的位置就是文件的長度。

三、結(jié)語

如果在學(xué)習(xí)C語言文件操作過程中很熟悉匯編過程的話會發(fā)現(xiàn)文件操作形式萬變不離其宗,直接I/O文件操作和流式文件的操作大體相同,也提供了相應(yīng)的Unicode字符操作函數(shù),比如_wopen等。這些操作中BCB可以幫助我們很多操作。C語言中的編程是計算機中相對比較復(fù)雜的東西,很多初學(xué)者也因此而很頭痛,但是只要找到這其中的奧妙,就會找到文件操作的趣味性。任何學(xué)習(xí)都需要興趣指引。

參考文獻:

[1]張荷花.ATLAS常規(guī)語言部分到C語言的轉(zhuǎn)換[D].吉林大學(xué).2004.

[2]劉沖.張瑋瑋.C語言中文件操作中讀寫數(shù)據(jù)函數(shù)的應(yīng)用[J].黑龍江科技信息.2015,20:163-164

[3]李躍.嵌入式實時操作系統(tǒng)設(shè)計方法研究[D].西南交通大學(xué).2006.

(作者單位:江蘇省宿城中等專業(yè)學(xué)校)

猜你喜歡
趣味
趣味冷知識
趣味冷知識
趣味冷知識
趣味冷知識
趣味連連連
趣味閱兵
午睡的趣味
特別文摘(2016年24期)2016-12-29 21:03:08
妙趣橫生的趣味創(chuàng)意
趣味型男
讓你HOLD不住的趣味創(chuàng)意
主站蜘蛛池模板: 亚洲视频在线青青| 五月天香蕉视频国产亚| 免费人成网站在线观看欧美| 国产精品久久久久久久久kt| 亚洲精品视频免费看| 亚洲日韩在线满18点击进入| 色视频国产| 色天天综合| 免费三A级毛片视频| 香蕉伊思人视频| 老司机精品久久| 特级欧美视频aaaaaa| 高清久久精品亚洲日韩Av| 国产精品午夜福利麻豆| 亚洲欧美成人综合| 亚洲日本中文综合在线| 天天视频在线91频| 欧美丝袜高跟鞋一区二区| 日韩精品无码不卡无码| 高清色本在线www| av天堂最新版在线| 青青操国产视频| 亚洲女同欧美在线| 伊人查蕉在线观看国产精品| 亚洲人成影院午夜网站| 在线国产欧美| 亚洲成aⅴ人片在线影院八| 综合色在线| 免费国产黄线在线观看| 欧美成a人片在线观看| av色爱 天堂网| 精品视频一区二区观看| 嫩草国产在线| 国产精品三区四区| 91蝌蚪视频在线观看| 久久视精品| 91福利在线看| …亚洲 欧洲 另类 春色| 亚洲黄色成人| аⅴ资源中文在线天堂| 手机在线免费不卡一区二| 狠狠综合久久久久综| 2020最新国产精品视频| 国产男女XX00免费观看| 免费看黄片一区二区三区| 四虎免费视频网站| 日韩精品欧美国产在线| 国产白浆在线观看| 国产在线精品香蕉麻豆| 久久99蜜桃精品久久久久小说| 亚洲伦理一区二区| 多人乱p欧美在线观看| 久久久精品无码一区二区三区| 国产在线专区| 欧美日韩在线成人| 国产精品手机在线观看你懂的| 日本人妻一区二区三区不卡影院| 日韩不卡免费视频| 日韩免费毛片| 91久久偷偷做嫩草影院精品| 亚洲视频免费在线看| 九九九精品成人免费视频7| 免费av一区二区三区在线| 国产av剧情无码精品色午夜| 国产一区二区视频在线| 久久99国产乱子伦精品免| 中文字幕1区2区| 亚洲免费人成影院| 国产精品护士| 伊人久综合| 成年人久久黄色网站| 无码一区二区波多野结衣播放搜索| 国产高清在线丝袜精品一区| 野花国产精品入口| 欧美日韩中文国产va另类| 456亚洲人成高清在线| 成年人国产视频| 国产乱子伦无码精品小说 | 日韩精品久久无码中文字幕色欲| 国产浮力第一页永久地址| 99re在线观看视频| 欧美一级夜夜爽www|