\n輸出到文件實(shí)際上是 0D 0A 占2個(gè)字節(jié)
文水網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營維護(hù)。創(chuàng)新互聯(lián)自2013年創(chuàng)立以來到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)。
程序?qū)懭胛募淖止?jié)是
31 20 32 20 33 0D 0A 34 20 35 20 35 0D 0A 共14個(gè)字節(jié)
第一次讀入的時(shí)候 讀入1 空格 2
文件指針移過3個(gè)字節(jié) 31 20 32
第二次讀入的時(shí)候 讀入 空格 3 換行 4
文件指針移過了5個(gè)字節(jié)
20 33 0D 0A 34
第三次讀入的時(shí)候 讀入 空格 5 空格 6
文件指針移過4個(gè)字節(jié)
20 35 20 36
在文本模式下ftell會(huì)自動(dòng)處理換行符,在UNIX,MSDOS,MAC這三個(gè)系統(tǒng)對(duì)換行符的定義是不一樣的:
UNIX: "\n"
MSDOS: "\r\n"
MAC: "\r"
在文本模式下,假如是在windows系統(tǒng)下"\r\n"會(huì)當(dāng)成一個(gè)字符, 而在二進(jìn)制模式下"\r\n"會(huì)忽略操作系統(tǒng)對(duì)特殊字符的定義,識(shí)別為'\r'和'\n'兩個(gè)字符。所以ftell返回的偏移量會(huì)有所不同。
ftell:是獲取當(dāng)前文件指針位置。
在例題中先使用fseek移動(dòng)到文件的末尾了,所以ftell函數(shù)返回的值的大小是根據(jù)
你傳入文件大小而定的。在例題首先gets(filename);
意思:如果你傳入的一個(gè)文件大小1000字節(jié)的文件名,該例題打印的值就是1000,