亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

C語言中,fread和fwrite函數可用于文本文件的輸入輸出嗎?

C語言中,fread和fwrite函數可用于文本文件的輸入輸出嗎?

SSM
天涯盡頭無女友 2019-02-11 14:10:01
C語言中,fread和fwrite函數可用于文本文件的輸入輸出嗎?
查看完整描述

3 回答

?
揚帆大魚

TA貢獻1799條經驗 獲得超9個贊

可以使用。

fread和fwrite是C語言中的標準塊讀/寫函數,只負責將文件中的數據讀入到內存,及將內存中的數據寫入到文件。在這個過程中,所讀寫的數據是文本或是二進制均不不會被函數所關心。
所以只要在打開文件時,使用的屬性支持讀或者寫,就可以調用fread或fwrite執行文本文件的輸入輸出操作。

查看完整回答
反對 回復 2019-03-26
?
慕的地8271018

TA貢獻1796條經驗 獲得超4個贊

當然可以啊。
文本文件本質上仍然是二進制文件,僅僅是它保存的信息是些文本(比如可顯示的ASCII碼,雙字節漢字等等),這樣文本編輯器就可以用“文本方式”查看和編輯內容,而不像二進制那樣的天書一樣的玩意
這段代碼就是把字符串用fwrite寫入文本文件
char* s="ABCD1234";
FILE* pf;
pf=fopen("d:\\111.txt","wb");
fwrite(s,strlen(s),1,pf);

再舉個例子:
向一個文件寫入一個10進制數1145258561,那么用文本方式打開它,文件內容就是ABCD.
long int a=1145258561; //這個數字的16進制是0x444342141,每個字節對應的ASCII碼正好是DCBA, Intel規則是高字節在后
FILE* pf;
pf=fopen("d:\\111.txt","wb");
fwrite(&a,sizeof(a),1,pf);
總之,所有文件都是二進制文件,它里面的數據的具體解釋取決于用什么數據結構寫入的,比如一個mp3文件你用mp3播放器打開那它就會給你唱一曲,你用文本方式打開它那就是些毫無意義的亂碼,因為這個文件寫入的時候是以mp3的數據結構寫入的,而不是文本



查看完整回答
反對 回復 2019-03-26
?
波斯汪

TA貢獻1811條經驗 獲得超4個贊

fread和fwrite是數據塊讀寫
可以用scanf從屏幕輸入數據,用fwrite將數據寫進文件
用fread讀取數據,然后可以用printf將數據輸出到屏幕

查看完整回答
反對 回復 2019-03-26
  • 3 回答
  • 0 關注
  • 1308 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號