鱼C论坛

 找回密码
 立即注册
查看: 2124|回复: 1

在文件操作03(新版)遇到个问题

[复制链接]
发表于 2012-5-27 15:22:33 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
视频里头的main函数中是这么写的scanf("%s %d %d %s", &stu[i].name, &stu[i].num, &stu[i].age, &stu[i].addr);然后在用load函数读取没有问题

可是当我改成scanf("%s,%d,%d,%s", &stu[i].name, &stu[i].num, &stu[i].age, &stu[i].addr);输入的时候当然也是用逗号隔开(a,1,1,aa),可是生成的二进制文件里头却出现了","的值,而且用load函数读取的时候也变成了a,1,1,aa,0,0,这是为什么呢?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-5-28 10:37:35 | 显示全部楼层
我没看过你们的视频,但是首先我发现视频上的代码有个问题scanf("%s %d %d %s", &stu[i].name, &stu[i].num, &stu[i].age, &stu[i].addr);这里面%s输入的都是字符串,字符串就是字符数组不用加“&“,另外你问的这个问题,跟scanf函数的输入格式有关系,因为你没有贴源码,我没法去调试,所以我建议你个方法,就是输入以后,你输入的数据都放在内存中的某个地方,如果你能看懂汇编代码的话,就能找到地址,然后去这个内存单元看看,你输入的数据里面没有被添加两个0.   另外建议楼主scanf函数输入的时候%s%d%d 这之间什么都不用加最好,因为系统自己加了空格进去,输入的时候本来就要敲空格,不要像你说的视频上还要加一个空格,你输入的时候要敲两次空格,很麻烦并且容易出错。。。            )
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-20 05:41

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表