24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 593  |  回复: 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

银虫 (小有名气)

引用回帖:
Originally posted by ms98 at 2009-8-10 11:02:
一起床就看到这么郁闷的代码,扔一堆代码,自己不调试的?
1、诡异的代码,虽然号称是c语言,却充满了c++的注释和类型。个人怀疑根本产生了一个cpp文件,检查先;
2、c语言中没有bool型,如果有人告诉你有,那你 ...

你说了这么多,十分感谢,可是我还是不知道应该怎么改,请高人指路
7楼2009-08-11 05:35:28
已阅   回复此楼   关注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的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 340求调剂 +5 Amber00 2026-03-26 5/250 2026-03-29 11:10 by gaoxiaoniuma
[考研] 332求调剂 +8 蕉蕉123 2026-03-28 8/400 2026-03-29 10:46 by 周梓丹
[考研] 各位老师好,我的一志愿为北京科技大学085601材料专硕 +8 Koxui 2026-03-28 8/400 2026-03-29 09:50 by laoshidan
[考研] 298求调剂 +4 种圣赐 2026-03-28 4/200 2026-03-29 08:42 by q1092522407
[考研] 一志愿211 初试270分 求调剂 +8 谷雨上岸 2026-03-23 9/450 2026-03-29 01:00 by 我是小康
[考研] 本科新能源科学与工程,一志愿华理能动285求调剂 +3 AZMK 2026-03-27 5/250 2026-03-28 16:19 by xxxsssccc
[考研] 化学0703 调剂 306分 一志愿211 +4 26要上岸 2026-03-28 4/200 2026-03-28 15:30 by 1018329917
[考研] 复试调剂 +3 raojunqi0129 2026-03-28 3/150 2026-03-28 15:27 by 落睿可思
[考研] 304求调剂 +6 曼殊2266 2026-03-27 6/300 2026-03-28 14:10 by 唐沐儿
[考研] 283求调剂 +7 A child 2026-03-28 7/350 2026-03-28 12:05 by zllcz
[考研] 085600材料与化工调剂 +10 A-哆啦Z梦 2026-03-23 16/800 2026-03-27 15:13 by caszguilin
[考研] 324求调剂 +5 hanamiko 2026-03-26 5/250 2026-03-27 10:33 by wangjy2002
[考研] 304材料求调剂 +4 钟llll 2026-03-26 4/200 2026-03-27 03:42 by wxiongid
[考研] 材料调剂 5+4 想要一壶桃花水 2026-03-25 10/500 2026-03-26 19:56 by 不吃魚的貓
[考研] 334分 一志愿武理 材料求调剂 +4 李李不服输 2026-03-26 4/200 2026-03-26 16:00 by 不吃魚的貓
[考研] 一志愿南航 335分 | 0856材料化工 | GPA 4.07 | 有科研经历 +6 cccchenso 2026-03-23 6/300 2026-03-25 22:25 by 544594351
[考研] 【2026考研调剂】制药工程 284分 求相关专业调剂名额 +4 袁奂奂 2026-03-25 8/400 2026-03-25 14:32 by lbsjt
[考研] 一志愿南航材料专317分求调剂 +5 炸呀炸呀炸薯条 2026-03-23 5/250 2026-03-24 16:52 by 星空星月
[考研] 材料专硕331求调剂 +4 鲜当牛 2026-03-24 4/200 2026-03-24 15:58 by JourneyLucky
[考研] 335求调剂 +4 yuyu宇 2026-03-23 5/250 2026-03-23 23:49 by Txy@872106
信息提示
请填处理意见