24小时热门版块排行榜    

Znn3bq.jpeg
查看: 611  |  回复: 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的回帖

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的回帖

tjyl

金虫 (正式写手)

★ ★
wangen994(金币+2):感谢参与讨论
简单的像 http://www.china-pub.com/23985&ref=xiangguan 就讲了C99添加的一些东西。
其他的像手册式的http://www.china-pub.com/35853
http://www.china-pub.com/39842&ref=ps 也说了的。
其实主要就是添加了复数,布尔类型,支持inline函数,可以用变长数组,零长数组之类的。大都是以前GCC对ANSI C的扩展。
对于格式化的文件读入,一般说来fscanf好像也没有什么。不过很多不推荐这样,说是怕容易引起缓冲区溢出,推荐fgets和sscanf搭配起来用。http://c-faq-chn.sourceforge.net/ccfaq/node209.html 讲了的。
5楼2009-08-11 00:18:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

joe1103

银虫 (小有名气)

引用回帖:
Originally posted by ms98 at 2009-8-10 20:04:
C99,郁闷得...那标准至今没看过...我跟不上时代了...
至于读的问题,就在fscanf(fp1,"%d",*(b+i));参数上,改了马上就好。后面两种方法(fgets,fread)感觉lz是逼急了用用,结果问题更大。其实fscan ...

你说的fscanf参数上怎么改?
6楼2009-08-11 05:33:54
已阅   回复此楼   关注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的回帖

joe1103

银虫 (小有名气)

问题已经解决了,原来是fscanf读取的数之间要有空格
8楼2009-08-11 08:12:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 joe1103 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 2026山东省优青 +3 luckinging 2026-05-14 4/200 2026-05-19 16:15 by 52wls
[论文投稿] 求助大佬sci投稿哪个好中 +4 江沅188 2026-05-12 5/250 2026-05-19 15:50 by CFD_Helper
[文学芳草园] 献血感触 +4 呀呀好傻 2026-05-19 4/200 2026-05-19 15:09 by seaskyy
[基金申请] 评审有感 +10 popular289 2026-05-18 16/800 2026-05-19 14:46 by popular289
[有机交流] 反应很差,大量原料没有反应 5+3 Mr.Zot 2026-05-19 3/150 2026-05-19 13:56 by xtlilibin
[论文投稿] Sci. Bull. 悲剧经验 +4 jyang1999 2026-05-16 4/200 2026-05-19 10:56 by maolC
[考博] 找博士生导师 +6 小代想上岸 2026-05-15 7/350 2026-05-19 10:22 by free_fisher
[考博] 云南大学材料与能源学院解琳课题组钙钛矿博士招生 +3 光伏爱好者 2026-05-17 4/200 2026-05-19 01:19 by 风起于浮萍
[考博] 博士申请 +5 星…… 2026-05-18 6/300 2026-05-18 23:49 by 糊糊涂涂好
[基金申请] 面上本子正文33页,违规吗?会被低分嘛? +8 1234567wang 2026-05-17 10/500 2026-05-18 18:52 by zzahkj
[基金申请] 国自然上会要求 +5 无名者登山 2026-05-18 9/450 2026-05-18 17:50 by BlakeReary
[基金申请] 今年审到国自然15份,谈谈感受 +16 国自然国社科中 2026-05-17 16/800 2026-05-18 14:58 by gy116024
[硕博家园] 考博自荐 +5 科研狗111 2026-05-13 6/300 2026-05-18 11:22 by 糊糊涂涂好
[基金申请] 青C资助名额大幅增加! +12 西葫芦炒鸡蛋 2026-05-13 16/800 2026-05-18 10:02 by Equinoxhua
[基金申请] 重磅!青年科学基金项目(C类)资助增幅预计超过50% +7 水和泥不是水泥 2026-05-13 10/500 2026-05-18 07:50 by 水和泥不是水泥
[文学芳草园] 半夜喝咖啡 +3 myrtle 2026-05-15 5/250 2026-05-18 01:03 by 小沈2018
[高分子] 本人最近太闲了,谁有问题可以提,每天会统一回复 +9 一切都是空工 2026-05-12 20/1000 2026-05-16 19:52 by Equinoxhua
[有机交流] 求助2,4-二氯-5-嘧啶甲醛的合成方法 20+3 光吃不拉 2026-05-14 6/300 2026-05-16 19:46 by Equinoxhua
[有机交流] 求有机合成大神指点三硫酸乙烯酯(CAS:2793408-99-6)的合成路线 30+3 Leekmid 2026-05-13 10/500 2026-05-16 16:37 by czyzsu
[有机交流] 如何实现卤原子转化 +3 BT20230424 2026-05-15 5/250 2026-05-16 16:20 by czyzsu
信息提示
请填处理意见