函數(shù)定義和函數(shù)調(diào)用是兩個(gè)概念,函數(shù)定義 為f(int *arr),表示參數(shù)是一個(gè)整型指針,因此使用該函數(shù)時(shí)要傳遞一個(gè)地址,如變量int a=0; 調(diào)用函數(shù)f傳遞a的地址時(shí)需要寫為f(a);而對(duì)于數(shù)組來說,如int b[]=[1,2,3], b本身就是數(shù)組首元素的地址,因此調(diào)用函數(shù)f傳遞數(shù)組首地址需要寫為f(b)。
10年積累的做網(wǎng)站、成都做網(wǎng)站經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有市中免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
c語言 文件指針名=fopen(文件名,使用文件方式)函數(shù)參數(shù)說明
作者[fanld] 發(fā)表于[2008-11-18 16:10:00]
格式:文件指針名=fopen(文件名,使用文件方式)
參數(shù):
文件名 意義
"C:\\TC\\qwe.txt" 文件C:\TC\qwe.txt
"qwe.txt" 和程序在同一目錄下的qwe.txt
文件使用方式 意 義
“rt”只讀打開一個(gè)文本文件,只允許讀數(shù)據(jù)
“wt”只寫打開或建立一個(gè)文本文件,只允許寫數(shù)據(jù)
“at”追加打開一個(gè)文本文件,并在文件末尾寫數(shù)據(jù)
“rb”只讀打開一個(gè)二進(jìn)制文件,只允許讀數(shù)據(jù)
“wb” 只寫打開或建立一個(gè)二進(jìn)制文件,只允許寫數(shù)據(jù)
“ab” 追加打開一個(gè)二進(jìn)制文件,并在文件末尾寫數(shù)據(jù)
“rt+” 讀寫打開一個(gè)文本文件,允許讀和寫
“wt+” 讀寫打開或建立一個(gè)文本文件,允許讀寫
“at+” 讀寫打開一個(gè)文本文件,允許讀,或在文件末追加數(shù)據(jù)
“rb+” 讀寫打開一個(gè)二進(jìn)制文件,允許讀和寫
“wb+” 讀寫打開或建立一個(gè)二進(jìn)制文件,允許讀和寫
“ab+” 讀寫打開一個(gè)二進(jìn)制文件,允許讀,或在文件末追加數(shù)據(jù)
對(duì)于文件使用方式有以下幾點(diǎn)說明:
1. 文件使用方式由r,w,a,t,b,+六個(gè)字符拼成,各字符的含義是:
r(read): 讀
w(write): 寫
a(append): 追加
t(text): 文本文件,可省略不寫
b(banary): 二進(jìn)制文件
+: 讀和寫
2. 凡用“r”打開一個(gè)文件時(shí),該文件必須已經(jīng)存在,且只能從該文件讀出。
3. 用“w”打開的文件只能向該文件寫入。若打開的文件不存在,則以指定的文件名建立該文件,若打開的文件已經(jīng)存在,則將該文件刪去,重建一個(gè)新文件。
4. 若要向一個(gè)已存在的文件追加新的信息,只能用“a ”方式打開文件。但此時(shí)該文件必須是存在的,否則將會(huì)出錯(cuò)。
5. 在打開一個(gè)文件時(shí),如果出錯(cuò),fopen將返回一個(gè)空指針值NULL。在程序中可以用這一信息來判別是否完成打開文件的工作,并作相應(yīng)的處理。
如果成功的打開一個(gè)文件, fopen()函數(shù)返回文件指針, 否則返回空指針(NULL)。由此可判斷文件打開是否成功。
可以作為參數(shù).
int
fgetpos(file
stream,fpos_t
*pos);取得當(dāng)前文件指針.把與stream相聯(lián)系的文件指針的位置保存在pos所指的地方.
首先你先明白這幾個(gè)函數(shù)的調(diào)用形式,然后你依據(jù)各個(gè)調(diào)用參數(shù)你就可以明白函數(shù)是如何確定讀入哪一個(gè)字符的了;
1.fread(buffer,size,count,fp);(一般調(diào)用形式)各個(gè)參數(shù)如下:
(1)buffer:是一個(gè)指針,對(duì)fread來說,它是讀入數(shù)據(jù)的存放地址。對(duì)fwrite來說,是要輸出數(shù)據(jù)的地址。
(2)size:要讀寫的字節(jié)數(shù);
(3)count:要進(jìn)行讀寫多少個(gè)size字節(jié)的數(shù)據(jù)項(xiàng);
(4)fp:文件型指針。
這兩個(gè)函數(shù)都是依據(jù)fp文件指針來確定讀入字符的;
2.fgets的調(diào)用形式是
fgets():char *fgets(char *str, int num, FILE *fp)
參數(shù)說明:str: 保存從文件讀取出來的字符串
fp: 待讀文件的文件指針
num: 表示從文件中讀出的字符串不超過 n-1個(gè)字符。在讀入的最后一個(gè)字符后加上串結(jié)束標(biāo)志'\0'
它讀出的字符串是連續(xù)的流,因此你想一次性讀取不同的字符串是不可以的,只能通過修改fp指向來實(shí)現(xiàn),最好的方式是看下函數(shù)的原型,這樣利于去理解和知道它運(yùn)行機(jī)制。