编写程序从文本文件in.txt读入10个整数,以二进制方式写入一个名为out.bin的新文件中。这样写对么? 10

#include<stdio.h>#include<stdlib.h>main(){inti,num[10];FILE*fr,*fw;if((fr=fopen("in.t... #include <stdio.h>
#include <stdlib.h>
main()
{
int i,num[10];
FILE *fr,*fw;
if((fr=fopen ( "in.txt","r"))==NULL)
{
printf("can't open file: in.txt\n");
exit(0);
}
if((fw=fopen ( "out.bin","wb"))==NULL)
{
printf("can't open file: res.dat\n");
exit(0);
}
for(i=0;i<10;i++)
{
fscanf(fr,"%d",&num[i]);
}
for(i=0;i<10;i++)
fwrite(&num[i],sizeof(int),1,fw);
fclose(fr);
fclose(fw);
}读文本用fscanf,二进制些用fwrite,如果文本方式用fprintf么?
展开
 我来答
风若远去何人留
推荐于2017-11-13 · 知道合伙人互联网行家
风若远去何人留
知道合伙人互联网行家
采纳数:20412 获赞数:450113
专业C/C++软件开发

向TA提问 私信TA
展开全部
这样做会出错的.
读写方式必须要统一,否则就会出错.
如果写用fwrite, 那么读必须用fread, 同时打开文件都要用二进制方式,即 wb和rb
如果读要用fscanf, 那么写就必须用fprintf, 打开文件时用文本方式,即w和r
来自:求助得到的回答
wenqing8585
2017-11-11 · TA获得超过8252个赞
知道大有可为答主
回答量:8078
采纳率:70%
帮助的人:3839万
展开全部
应该没什么错误。
写文件用fwrite或fprintf都可以,不论写二进制还是文本,两个函数都可以用
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式