24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 585  |  回复: 7
当前主题已经存档。
【有奖交流】积极回复本帖子,参与交流,就有机会分得作者 joe1103 的 1 个金币
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

joe1103

银虫 (小有名气)

[交流] 【求助】如何用c读取文本文件

我现在想用c测试文本文件上的二进制数,可是现在连读取数据都解决不了,:dnd:麻烦大家帮我看看我的代码
#define _CRT_SECURE_NO_DEPRECATE
#include

void main()
{
        int i;
        bool a[3]={1,0,0};
        bool b[3];
FILE *fp1, *fp2;

fp1=fopen("1.txt","w+";
for(i=0;i<=2;i++)
fprintf(fp1,"%d",*(a+i));
fclose(fp1);
fp1=fopen("1.txt","r+";
//for(i=0;i<=2;i++)
//fscanf(fp1,"%d",*(b+i));
//b[3]=fgetc(fp1);
fread(b,sizeof(int),3,fp1);
fclose(fp1);
fp2=fopen("2.txt","w+";
for(i=0;i<=2;i++)
fprintf(fp2,"%d",*(b+i));
fclose(fp2);

}

写数据已经可以了,但是读数据试了各种方法还不行。
还有bool型的用%d表示吗?,对bool型的理解也不是很好,望高人指教
由于小弟金币不多,我将拿出我一半的财富给帮助我的人
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

joe1103

银虫 (小有名气)

问题已经解决了,原来是fscanf读取的数之间要有空格
8楼2009-08-11 08:12:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 8 个回答

ms98


rjjy(金币+1,VIP+0):谢谢交流! 8-10 18:15
一起床就看到这么郁闷的代码,扔一堆代码,自己不调试的?
1、诡异的代码,虽然号称是c语言,却充满了c++的注释和类型。个人怀疑根本产生了一个cpp文件,检查先;
2、c语言中没有bool型,如果有人告诉你有,那你就别再听他的了。只能用int型。如果能通过编译,检查你的源文件后缀是否为cpp。
3、for(i=0;i<=2;i++)
fprintf(fp1,"%d",*(a+i));
这个代码产生的文本你有看过?如果看过,检查它是被当成1个整数还是3个。
4、for(i=0;i<=2;i++)
   fscanf(fp1,"%d",*(b+i));
*(b+i)是什么?一个指针还是一个整型变量?记住scanf的参数需要一个指针。
5、fread(b,sizeof(int),3,fp1);
这错得没边了,fread读取的时候,是按照ascii来读的,它不关心文本中数据类型。换句话说,你在文本中看到的100,它不一定这么认为。这个应用里面,结合你的知识程度,不要用它。
6、w+  r+,“+”干什么?又读有写?其实没有必要,只读只写就挺好。
7、b[3]=fgetc(fp1);
这句错得...
8、#define _CRT_SECURE_NO_DEPRECATE
没必要,感觉像最近比较流行的实训班似得,言必称标准,非得怎么开头...
9、放在代码中表示什么?
发帖子要检查啊
10、其它还有很多次要问题。
总得来说,lz函数用得很多,那句话怎么说?“贪多嚼不烂”。暂时先fscanf,fprintf熟悉一下,然后研究研一下ascii码,这些问题就会有新认识了。
2楼2009-08-10 11:02:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tjyl

金虫 (正式写手)


rjjy(金币+1,VIP+0):谢谢交流! 8-10 18:16
1、C可以用// 注释的,C99标准里添加的。

2、C99中bool定义在stdbool.h里,其实就是 #define _Bool bool,但_Bool本质上就是无符号整数吧,只是只能取0和1,赋一个非0和1的值也会被转换到1的。如果想打印的话 %u吧。

3、LZ的代码真让人看的头晕,感觉在看火星语啊

4、打开了文件还是检查一下是否成功打开吧。

[ Last edited by tjyl on 2009-8-10 at 15:52 ]
3楼2009-08-10 15:51:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ms98

★ ★
0112358(金币+2):感谢阁下长久以来对程序版的支持,谢谢回帖应助。
C99,郁闷得...那标准至今没看过...我跟不上时代了...
至于读的问题,就在fscanf(fp1,"%d",*(b+i));参数上,改了马上就好。后面两种方法(fgets,fread)感觉lz是逼急了用用,结果问题更大。其实fscanf就非常强大,恩..
现在发现一个现象,就是初学者根本不能要求代码规范和标准,只有等他做个大工程,自己领悟。
下学期教c语言,16章,不到16个大节的课...谁给指条明路?
4楼2009-08-10 20:04:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 298求调剂 +3 种圣赐 2026-03-28 3/150 2026-03-28 23:58 by wxiongid
[考研] 材料学硕333求调剂 +10 北道巷 2026-03-24 10/500 2026-03-28 23:06 by 无际的草原
[考研] 求调剂一志愿海大,0703化学学硕304分,有大创项目,四级已过 +7 幸运哩哩 2026-03-22 11/550 2026-03-28 20:27 by 唐沐儿
[考研] 一志愿北化085600材料专硕275|有文章专利|求调剂 +7 Micky11223 2026-03-25 7/350 2026-03-28 18:34 by 无际的草原
[考研] 压国家一区线,求导师收留,有恩必谢! +7 迷人的哈哈 2026-03-28 7/350 2026-03-28 16:47 by 催化大白
[考研] 346求调剂 一志愿070303有机化学 +3 萝卜炖青菜 2026-03-28 3/150 2026-03-28 14:11 by 唐沐儿
[考研] 求化学调剂 +4 wulanna 2026-03-28 4/200 2026-03-28 13:37 by 唐沐儿
[考研] 085701环境工程,267求调剂 +16 minht 2026-03-26 16/800 2026-03-28 12:16 by zllcz
[考研] 286求调剂 +4 丢掉懒惰 2026-03-27 7/350 2026-03-28 08:07 by baoball
[考研] 331环境科学与工程求调剂 +3 熠然好运气 2026-03-27 3/150 2026-03-28 04:11 by fmesaito
[考研] 材料与化工085600,总分304,本科有两篇sci参与,求调剂 +10 幸运的酱酱 2026-03-22 12/600 2026-03-27 16:08 by muchong357
[考研] 08开头275求调剂 +4 拉谁不重要 2026-03-26 4/200 2026-03-27 14:12 by Delta2012
[考研] 调剂推荐 +5 清酒714 2026-03-26 6/300 2026-03-27 11:12 by 不吃魚的貓
[考研] 一志愿吉大071010,316分求调剂 +3 xgbiknn 2026-03-27 3/150 2026-03-27 10:36 by guoweigw
[硕博家园] 北京林业大学硕导招生广告 +6 kongweilin 2026-03-26 8/400 2026-03-27 10:18 by FF_16
[考研] 309求调剂 +4 gajsj 2026-03-25 5/250 2026-03-26 00:27 by Dyhoer
[考研] 一志愿上海交大生物与医药专硕324分,求调剂 +6 jiajunX 2026-03-22 6/300 2026-03-25 23:05 by licg0208
[考研] 材料专硕 335 分求调剂 +4 拒绝冷暴力 2026-03-25 4/200 2026-03-25 18:45 by haxia
[考研] 302求调剂 +4 锦衣卫藤椒 2026-03-25 4/200 2026-03-25 16:29 by 功夫疯狂
[考研] 一志愿国科过程所081700,274求调剂 +3 三水研0水立方 2026-03-23 3/150 2026-03-23 23:11 by MajorWen
信息提示
请填处理意见