回車和換行
對於程式中的回車和換行,一直都沒有真正去弄清楚過,這次查了下資料把它理清下
1.由來
<1>
printf
("aaa/rxx");
輸出的結果將為:
xxa,因為輸出為
aaa後又將列印頭移動到了行開始處
<2>
換行『/n』 10
(0x0a
),指開啟新的一行
將輸出:
aaa xx
<3>
測試在程式中,可以發現使用
』/r/n』
和單使用
』/n』
好像並沒有什麼區別,分別使用下面的**來測試
file
*fp=fopen("f:/lf.txt","w");
char *pstr="hello world/nhow are you doing";
fwrite(pstr,strlen(pstr),1,fp);
fclose(fp);
fp=fopen("f:/lfcr.txt","w");
char *pstr2="hello world/n/rhow are you doing";
fwrite(pstr2,strlen(pstr2),1,fp);
fclose(fp);
這裡分別使用換行(
cr)以及換行回車(
crlf
)來寫入檔案,然後再將它們讀入進來
intreaddata(file *fp,char *pdest)
char
pbuflf[100],pbuflfcr[100];
file *fplf=fopen("f:/lf.txt","rb");
file *fplfcr=fopen("f:/lfcr.txt","rb");
readdata(fplf,pbuflf);
readdata(fplfcr,pbuflfcr);
fclose(fplf);
fclose(fplfcr);
讀進來後,監視
pbuflf
和pbuflfcr
兩個變數,可以發現
pbuflf
char
*pstr="hello world/nhow are you doing";
pbuflf[11]
等於13
(即為回車符
/r),
pbuflf[12]
等於10
(即換行符
/n),而我們在寫入資料的時候只寫入了換行符,
說明這個檔案中的回車符是系統自己寫入的
pbuflfcr
char
*pstr2="hello world/n/rhow are you doing";
pbuflfcr[11]
等於13(/r
),pbuflfcr[12]
等於10(/n
),pbuflfcr[13]=13(/r)
從上面這兩處可以看出,當使用換行符的時候,系統會自動在其前面新增回車符(/r)
end.----廣告驅除----..
....
....
....
....
....
....
....
..
回車和換行
在計算機還沒有出現之前,有一種叫做電傳打字機 teletype model 33 的玩意,每秒鐘可以打10個字元。但是它有乙個問題,就是打完一行換行的時候,要用去0.2秒,正好可以打兩個字元。要是在這0.2秒裡面,又有新的字元傳過來,那麼這個字元將丟失。於是,研製人員想了個辦法解決這個問題,就是在每...
回車和換行
今天終於明白回車和換行的來歷了.在計算機還沒有出現之前,有一種叫做電傳打字機 teletype model 33 的玩意,每秒鐘可以打10個字元。但是它有乙個問題,就是打完一行換行的時候,要用去0.2秒,正好可以打兩個字元。要是在這0.2秒裡面,又有新的字元傳過來,那麼這個字元將丟失。於是,研製人員...
回車和換行
回車和換行 在計算機還沒有出現之前,有一種叫做電傳打字機 teletype model 33 的玩意,每秒鐘可以打 10個字元。但是它有乙個問題,就是打完一行換行的時候,要用去 0.2秒,正好可以打兩個字元。要是在這 0.2秒裡面,又有新的字元傳過來,那麼這個字元將丟失。於是,研製人員想了個辦法解決...