1樓:
首先你先明白這幾個函式的呼叫形式,然後你依據各個呼叫引數你就可以明白函式是如何確定讀入哪一個字元的了;
1.fread(buffer,size,count,fp);(一般呼叫形式)各個引數如下:
(1)buffer:是一個指標,對fread來說,它是讀入資料的存放地址。對fwrite來說,是要輸出資料的地址。
(2)size:要讀寫的位元組數;
(3)count:要進行讀寫多少個size位元組的資料項;
(4)fp:檔案型指標。
這兩個函式都是依據fp檔案指標來確定讀入字元的;
2.fgets的呼叫形式是
fgets():char *fgets(char *str, int num, file *fp)
引數說明:str: 儲存從檔案讀取出來的字串
fp: 待讀檔案的檔案指標
num: 表示從檔案中讀出的字串不超過 n-1個字元。在讀入的最後一個字元後加上串結束標誌'\0'
它讀出的字串是連續的流,因此你想一次性讀取不同的字串是不可以的,只能通過修改fp指向來實現,最好的方式是看下函式的原型,這樣利於去理解和知道它執行機制。
2樓:
fseek函式定位位置。每次讀取後,位置自動增加。
c語言指標問題,C語言指標問題
記憶體對齊的緣故。p buf 作為一個指標,它的值是記憶體的某個位元組的地址。如果想要把 p buf 強制轉換版 成一個 unsigned int 型別的指權針,需要滿足一個必要條件,就是 p buf 的值必須能夠被4整除。之所以是4,是因為 unsigned int 是要佔4個位元組的 c語言結構...
C 函式指標問題
我不知道你這樣的概念是從哪本書上得來的,什麼指標函式,是c 的標準嗎,c 的標準有這樣的說法嗎。反正我是沒聽說過。不過我知道你的大概意思,你說的指標函式就是指函式的引數是指標。而函式指標 在譚浩強的書上提到過這個概念 就是指向函式的指標。其實還有一種說法說指標函式是指返回指標的函式。我建議你最好是不...
關於C語言指標問題,求大神,C語言指標的問題,求大神!!
第一個函式的兩個指標是區域性變數,函式完了就銷燬了,換不換都一樣,第二個是直接操作指標指向的地方 記憶體單元 也就是直接操作變數。不恰當的比方,好比停車,有個圖紙記錄了每個車位停的什麼車,第一個就相當於另外拿了個圖紙畫了一下想要的位置,原來的圖沒變,函式結束後來的圖被扔了,原來的圖保留著,實際的車並...