c++ 中ofstream的 write()的相关问题!!!

inta=100;请问以下两种方式写入文件有什么不同呢?outfile.write((char*)&a,sizeof(int));outfile.write((char*... int a=100;
请问以下两种方式写入文件有什么不同呢?
outfile.write((char *)&a,sizeof(int));
outfile.write((char *)&a,sizeof(unsigned char));
请帮忙分析一下。
谢谢,那请问是不是占用的字节数越小越好呢?
展开
 我来答
難得當歌對酒時
2011-04-20 · TA获得超过1187个赞
知道小有建树答主
回答量:517
采纳率:100%
帮助的人:826万
展开全部
第一种向文件中写入4个字节(32位平台),第二种向文件中写入1个字节。
并不是占用的字节数越小越好,文件是用来保存数据的,能最好地保存数据的大小就是最好的。
int a=100;中,a占用4个字节,但是由于a较小,仅100那么大,故一个字节就能保存,它仅使用了这4个字节中的最低字节(小端模式),而第二种方式向文件中写入了a的最低字节,故第二种方式也能在小端模式的机器上正确工作。
真白的纱雾d442c
2011-04-20 · TA获得超过1093个赞
知道小有建树答主
回答量:265
采纳率:0%
帮助的人:538万
展开全部
第一种方式,在文件中写入了4个字节(VC下,sizeof(int)==4)
第二种方式,在文件中写入了1个字节(1个char占1个字节)

占用字节数的多少是与具体读取的方式有关的,需要跟读取的字节数保持一致
一般地说,大量写文件时,1个字节比4个字节占用的磁盘空间要少,但是能保存的东西也会变少(1个字节只有2^8)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友da5b8f559
2011-04-20 · TA获得超过130个赞
知道小有建树答主
回答量:176
采纳率:0%
帮助的人:97.3万
展开全部
写入后在文件中所占的大小不同,你可以分别执行这两句语句,执行前在两句后面分别加上同一个写入某个字符串的的语句,看两次写入后的结果就知道了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式