非常风学习网 导航

在C语言的文件中,像r,w,a,r+,w+,a+分别是什么意思,前面三者与后面三者有什么区别吗?

2024-05-17来源:编辑

一、含义不同:

r是只读,文件已存在,指针在文件头;r+是读写方式,读写指针都在文件头。w是只写方式,w+是读写方式建立新文件,读指针在文件头。a是追加方式打开文件,指针指向文件尾;a+是读写方式打开文件,读从文件开始,写从文件尾开始。

二、使用不同:

r:该文件必须存在。

r+:该文件必须存在。

w:若文件不存在则建立该文件。

w+:若文件不存在则建立该文件。

+: 读和写

凡用“r”打开一个文件时,该文件必须已经存在,且只能从该文件读出。

用“w”打开的文件只能向该文件写入。若打开的文件不存在,则以指定的文件名建立该文件,若打开的文件已经存在,则将该文件删去,重建一个新文件。

若要向一个已存在的文件追加新的信息,用“a”方式打开文件。如果指定文件不存在则尝试创建该文件。

以上内容参考:百度百科-c语言fopen函数



r 打开只读文件,该文件必须存在。

r+ 打开可读写复的文件,该文件必须存在。

w 打开只写文件,若文件存在则文件长度清为0,即制该文件内容会消失。若文件不存在则建立该文件。
w+ 打开可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。若文件不存在则建立百该文件。

a 以附加的方式打开只写文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。

a+ 以附加方式打开可读写的文度件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾后,即文件原先的内容会被保留。

扩展资料:

C语言是一门面向过程的计算机编程语言,与C++、Java等面向对象编程语言有所不同。

C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、仅产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

C语言描述问题比汇编语言迅速、工作量小、可读性好、易于调试、修改和移植,而代码质量与汇编语言相当。

C语言一般只比汇编语言代码生成的目标程序效率低10%~20%。因此,C语言可以编写系统软件。

参考资料来源:百度资料—C语言



r是只读,文件已存在,指针在文件头;r+是读写方式,读写指针都在文件头。w是只写方式,w+是读写方式建立新文件,读指针在文件头。a是追加方式打开文件,指针指向文件尾;a+是读写方式打开文件,读从文件开始,写从文件尾开始。

r 打开只读文件,该文件必须存在。
r+ 打开可读写的文件,该文件必须存在。
w 打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件。
w+ 打开可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。若文件不存在则建立该文件。
a 以附加的方式打开只写文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。
a+ 以附加方式打开可读写的文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾后,即文件原先的内容会被保留。

15176344684:C璇█涓,fopen()鍑芥暟涓,r杩樻湁w浠h〃浠涔堟搷浣,绫讳技鐨勮繕鏈夊摢浜?
蒸诸:绛旓細鎴戜及璁Z鏄兂璇寸殑鏄痜reopen()鍚 freopen(arg1,arg2,arg3)鏄c璇█鐨鎵撳紑鏂囦欢鐨勬柟寮忥紝鍚湁涓変釜鍙傛暟 arg1:琛ㄧず鐨勬槸鎵撳紑鏂囦欢鐨勮矾寰 arg2:琛ㄧず鈥渨鈥濇垨鑰"r"锛岃〃绀烘墦寮鏂囦欢鐨勬柟寮忥紝璇绘垨鑰呭啓 arg3:涓簊tdin鎴栬卻tdout琛ㄧず鏍囧噯杈撳叆鎴栬呰緭鍑恒備緥濡俧ropen("1.txt","r",stdin)鐨勬剰鎬濇槸浠ユ爣鍑嗚鐨勬柟寮忔墦寮...

15176344684:C璇█涓殑at+;wt+;rt+;wb+;鏄粈涔堟剰鎬
蒸诸:绛旓細杩欎簺閮芥槸C璇█鎵撳紑鏂囦欢鍑芥暟fopen鐨勪竴涓弬鏁版墦寮鏂囦欢鏂瑰紡鐨勫硷細 瀹氫箟鍑芥暟 FILE * fopen(const char * path,const char * mode); 鍑芥暟璇存槑 鍙傛暟path瀛楃涓插寘鍚鎵撳紑鐨勬枃浠璺緞鍙婃枃浠跺悕锛屽弬鏁癿ode瀛楃涓插垯浠h〃鐫娴佸舰鎬併 mode鏈変笅鍒楀嚑绉嶅舰鎬佸瓧绗︿覆: r 鎵撳紑鍙鏂囦欢锛岃鏂囦欢蹇呴』瀛樺湪銆 r+ 鎵撳紑...

15176344684:C璇█鏂囦欢:鐢╳鏂瑰紡鎵撳紑鐨勬枃浠,鍙互璇诲悧?
蒸诸:绛旓細涓鑸殑C璇█鏁欑▼閮芥湁鏂囦欢鎿嶄綔涓绔狅紝鍙互鎵炬湰鏁欐潗杩涗竴姝ュ涔犮2銆佷緥绋嬶細include<stdio.h>int a;char b,c[100];int main(){ FILE * fp1 = fopen("input.txt", "r");//鎵撳紑杈撳叆鏂囦欢 FILE * fp2 = fopen("output.txt", "w+");//鎵撳紑杈撳嚭鏂囦欢 if (fp1==NULL || fp2==NULL)...

15176344684:c璇█鎵撳紑鏂囦欢,瑕佸疄鐜拌鍙栧啀鍐欏叆,鐢鍝鎵撳紑鏂瑰紡?
蒸诸:绛旓細r 浠ュ彧璇绘柟寮忔墦寮鏂囦欢锛璇ユ枃浠跺繀椤诲瓨鍦ㄣ俽+ 浠ュ彲璇诲啓鏂瑰紡鎵撳紑鏂囦欢锛岃鏂囦欢蹇呴』瀛樺湪銆俽b+ 璇诲啓鎵撳紑涓涓簩杩涘埗鏂囦欢锛屽彧鍏佽璇诲啓鏁版嵁銆俽t+ 璇诲啓鎵撳紑涓涓枃鏈枃浠讹紝鍏佽璇诲拰鍐欍倃 鎵撳紑鍙啓鏂囦欢锛岃嫢鏂囦欢瀛樺湪鍒欐枃浠堕暱搴︽竻涓0锛屽嵆璇ユ枃浠跺唴瀹逛細娑堝け銆傝嫢鏂囦欢涓嶅瓨鍦ㄥ垯寤虹珛璇ユ枃浠躲w+ 鎵撳紑鍙鍐欐枃浠讹紝鑻ユ枃浠...

15176344684:C璇█涓,缂栫▼鐢ㄥ埌r w rb wb r+绛夌殑鏃跺欐庝箞鍒嗚鲸鏄鐢╮鍛㈣繕鏄敤rb,鎬庝箞鍖...
蒸诸:绛旓細鏂囦欢鎵撳紑鏂瑰紡 r-read璇 w-write鍐 a-鍦ㄦ枃浠鏈熬杩藉姞鏁版嵁 b-bite浜岃繘鍒舵枃浠 t-text鏂囨湰鏂囦欢 r+璇诲啓 w+鍐欒 鍏朵粬鐨勫彧瑕佹妸杩欎簺缁勫悎鍦ㄤ竴璧峰氨琛屼簡 濂芥瘮rt rb wt wb rb+ 鑰屽at+鍙互杩欐牱璁 a-鍦ㄦ枃浠舵湯灏捐拷鍔犳暟鎹 +锛堝啓鐨勫弽闈㈡槸璇伙級鎵浠t+琛ㄧず 鎵撳紑涓涓枃鏈鏂囦欢锛鍏佽璇绘垨鑰呭湪鏂囦欢鏈熬...

15176344684:鐢鏍囧噯C璇█搴撹繘琛屾枃浠舵搷浣滄椂,鑻ヨ浠+鏂瑰紡鎵撳紑涓涓繁缁忓瓨鍦鐨勬枃浠,鍒...
蒸诸:绛旓細銆愮瓟妗堛戯細A fopen鏂囦欢鎵撳紑妯″紡r浠h〃read鐨勭畝鍐欙紝+浠h〃鍙鍙啓锛寃浠h〃write锛宐浠h〃bit浜岃繘鍒朵綅锛宼浠h〃textr=rt锛屾墦寮鍙鏂囦欢锛岃鏂囦欢蹇呴』瀛樺湪r+ =rt+锛屾墦寮鍙鍙啓鐨勬枃浠讹紝璇ユ枃浠跺繀椤诲瓨鍦╮b 锛屽彧璇伙紝鎵撳紑涓涓簩杩涘埗鏂囦欢锛岃鏂囦欢蹇呴』瀛樺湪rb+ 锛屾墦寮涓涓簩杩涘埗鏂囦欢锛屽厑璁歌鍜屽啓锛岃鏂囦欢蹇呴』瀛樺湪w=...

15176344684:C璇█绋嬪簭璁捐 绠鍗曠殑璇诲彇鏂囦欢骞舵暣鐞嗘暟鎹
蒸诸:绛旓細鈥r+鈥 鍙鍐欐墦寮鏂囦欢,濡傛灉鏂囦欢涓嶅瓨鍦,杩斿洖閿欒.鈥渨鈥 鍙啓鎵撳紑鏂囦欢,濡傛灉鏂囦欢涓嶅瓨鍦,鍒欏垱寤轰竴涓柊鐨勬枃浠,濡傛灉宸茬粡瀛樺湪,灏嗛噷闈㈢殑鍐呭娓呯┖.鈥渨+鈥 鍙鍐欐墦寮鏂囦欢,濡傛灉鏂囦欢涓嶅瓨鍦,鍒涘缓鏂版枃浠,濡傛灉宸茬粡瀛樺湪,娓呯┖鏂囦欢涓鐨勫唴瀹.鈥渁鈥 浠ヨ拷鍔犲啓鍏ョ殑鏂瑰紡鎵撳紑鏂囦欢(鍦ㄦ枃浠舵湭灏捐拷鍔犲啓鍏ユ暟鎹) ,濡傛灉鏂囦欢涓...

15176344684:鍦–璇█绋嬪簭涓,鑻ヨ鍚鏂囦欢鏈熬娣诲姞鏂扮殑鏁版嵁,鍒欏簲浠ヤ笅闈㈢殑鍝鏂瑰紡鎵撳紑...
蒸诸:绛旓細FILE *fp锛沠p=("file a","r");鍏舵剰涔夋槸鍦ㄥ綋鍓嶇洰褰曚笅鎵撳紑鏂囦欢file a锛鍙厑璁歌繘琛屸滆鈥濇搷浣滐紝骞朵娇fp鎸囧悜璇ユ枃浠躲傚張濡傦細FILE *fphzk fphzk=("c:\\hzk16","rb")鍏舵剰涔夋槸鎵撳紑C椹卞姩鍣ㄧ鐩樼殑鏍圭洰褰曚笅鐨勬枃浠hzk16锛岃繖鏄竴涓簩杩涘埗鏂囦欢锛屽彧鍏佽鎸変簩杩涘埗鏂瑰紡杩涜璇绘搷浣溿備袱涓弽鏂滅嚎鈥淺\ 鈥濅腑...

15176344684:C璇█鏂囦欢鎵撳紑鏃 w+鍜r+鏈変粈涔堜笉鍚屻傘傞櫎浜嗕竴涓姹傛枃浠跺繀椤诲瓨鍦 涓涓...
蒸诸:绛旓細浣w+浼氬垱寤恒傚鏋滄枃浠跺瓨鍦锛宺+涓嶄細鑷姩娓呯┖鏂囦欢锛屼絾w+浼氳嚜鍔ㄦ妸宸叉湁鏂囦欢鐨勫唴瀹规竻绌恒傚彟澶栵紝r+鎵撳紑鏂囦欢鍚庯紝浼氭妸璇诲啓鎸囬拡鎸囧悜鏂囦欢鐨勫紑澶达紝鎵浠ヤ細瑕嗙洊宸叉湁鐨勬枃浠 鎵浠ヨ锛屼綘鐨勪緥瀛愪腑锛屼互r+鏂瑰紡鎵撳紑锛岃緭鍏锛屾枃浠跺唴瀹逛細鍙樹负dbc锛涗互w+鏂瑰紡鍒欎細鍙樹负d銆傚儚杩欐牱鐨勯棶棰橈紝浣犺嚜宸辫鍘昏瘯璇曞氨鐭ラ亾浜嗐

15176344684:C璇█鏂囦欢鎿嶄綔涓弬鏁 r+ w+鐨勫尯鍒
蒸诸:绛旓細褰撴枃浠朵笉瀛樺湪鏃锛宺+涓嶄細鍒涘缓锛岃屼細瀵艰嚧璋冪敤澶辫触锛屼絾w+浼氬垱寤恒傚鏋滄枃浠跺瓨鍦紝r+涓嶄細鑷姩娓呯┖鏂囦欢锛屼絾w+浼氳嚜鍔ㄦ妸宸叉湁鏂囦欢鐨勫唴瀹规竻绌恒傚彟澶栵紝r+鎵撳紑鏂囦欢鍚庯紝浼氭妸璇诲啓鎸囬拡鎸囧悜鏂囦欢鐨勫紑澶达紝鎵浠ヤ細瑕嗙洊宸叉湁鐨勬枃浠

首页
返回顶部
联系邮箱
非常风学习网