中易网

如需要向一个二进制文件尾部添加数据,则该文件的打开方式为 A)ios_base::app B)io

答案:2  悬赏:20  
解决时间 2021-02-22 18:33
如需要向一个二进制文件尾部添加数据,则该文件的打开方式为
A)ios_base::app B)ios_base::binary | ios_base::out
C)ios_base::out D)ios_base::binary | ios_base::app
最佳答案
A.″ab″ :对一个二进制文件添加
B.″rb+″ :读写打开一个二进制文件,只允许读写数据
C.″wb″:只写打开或新建一个二进制文件;只允许写数据。
D.″wb+″:读写打开或建立一个二进制文件,允许读和写。
全部回答
app,toseektotheendofastreambeforeeachinsertion. ate,toseektotheendofastreamwhenitscontrollingobjectisfirstcreated. in,topermitextractionfromastream. out,topermitinsertiontoastream. 就是说,app是文件流被打开后,每次执行outfile<<"hello\nworld!\n";的过程中,文件指针都移动到文件的末尾,就是在末端进行append。 ate是文件流被第一次打开的时候将文件指针移动到文件末尾,然后你可以通过outfile.seekp(pos);将指针移动到pos位置,就是说,在执行outfile<<str;过程中,文件指针你可以自己控制。当然,要是不seek的话会保持在末尾。 至于你说的覆盖以前的文件,是因为你没有指定ios_base::in,而默认为ios_base::out,导致文件被覆盖。具体里面的实现我就不清楚了。呵呵。反正app+out没事,ate+out就不能实现其功能了。我怀疑是不是里面的标志位有逻辑的冲突。你可以细致的研究一下。等你的好消息。 voidmain() { ofstreamoutfile; outfile.open("c:\\abc.txt",ios::ate|ios::out); outfile<<"ddddd"; outfile.seekp(0);//movethefilepointertothebeginning. outfile<<"a"; outfile.close(); } 可以看见a把第一个d覆盖了
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
求SQUARE ENIX在PS3上的所有游戏名称。
我买了一辆里程表被清零的汽车?被骗了?请问
你在我心目中是最好的。英语翻译。
广东路/马场道(路口)在哪里啊,我有事要去这
dnf卡美洛套装怎么获得 卡美洛套装要做多久
说唱里带生活中的压力被我化为动力是谁唱的是
菜鸟驿站(高林一里后门菜市场6号105)地址在哪
盈俊通讯这个地址在什么地方,我要处理点事
team leader什么意思
求原码:00111001的反码和补码
银行的流水账能不能在法院作为证据
74米比( )多1/4?讲一下怎么算出来的
兴隆商店(北京路)怎么去啊,有知道地址的么
功放有嗡嗡声 音量关了就没了
润鑫彩印这个地址在什么地方,我要处理点事
推荐资讯
请问客房中心文员到底是做什么啊?你已经做了
双凤眼的男人代表着什么?
德州博通教育(一中总校区)这个地址在什么地方
QQ自由幻想飞鸟游鱼任务具体怎么做?
淄博职业学院春考录取分数线
泽红棉絮专卖地址有知道的么?有点事想过去
qq同步助手跟无线连接有关吗
小型企业仓库库存管理,装哪种软件最好用?
夏利车跑20到50码方向盘很活,但是超过50以上
一商场,高度23.5米,地上4层,地下2层,请问
怎样设置课件底板
现代IX25怎样开远近光灯
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?