c++读取二进制代码 即读出来是0和1 <有50财富追加,,共100>

要读取一个文件的二进制代码(不是二进制模式),对0和1处理后再写进另一个文件,就像压缩软件做的那样。小弟是菜鸟中的菜鸟,望给个代码实例且解释稍清楚些(如写明函数作用)。小... 要读取一个文件的二进制代码(不是二进制模式),对0和1处理后再写进另一个文件,就像压缩软件做的那样。
小弟是菜鸟中的菜鸟,望给个代码实例且解释稍清楚些(如写明函数作用)。小弟感激不尽啊!
展开
 我来答
百度网友62981a1
2011-08-17 · 超过18用户采纳过TA的回答
知道答主
回答量:110
采纳率:0%
帮助的人:60.6万
展开全部
读取文件的二进制代码有专门的函数,读文件打开用open(),读取用read(), write(),读取后记得要关闭close()
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
charmingcow
2011-08-16 · TA获得超过143个赞
知道小有建树答主
回答量:404
采纳率:0%
帮助的人:163万
展开全部
http://www.cplusplus.com/reference/clibrary/cstdio/fread/
看这个例子
不过你要处理0,1 需要再取出来的char * 上做处理
c/c++支持最少字节类型的读取
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yantailuojie
2011-08-16
知道答主
回答量:12
采纳率:0%
帮助的人:4.4万
展开全部
用int读出来然后再用位运算进行处理试试吧
追问
能给段代码看看么?谢谢啦
追答
#include 

void main()
{
int n=10;
for (int i=0;i<sizeof(int);i++)
{
printf("%d",(n&1<<i)?1:0);
}

printf("\nn=%d\n\n",n);

for (int i=0;i<sizeof(int);i++)
{
n=n|1<<i;
}

for (int i=0;i<sizeof(int);i++)
{
printf("%d",(n&1<<i)?1:0);
}
printf("\nn=%d\n",n);
}

这个显示的二进制低位在前的,你可以自己调整下
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式