c语言文件读写问题,文件没内容?程序是照着书上搬出来的,运行啥都没问题就是生成的文件里面看不到内容

 我来答
arongustc
科技发烧友

2021-03-19 · 智能家居/数码/手机/智能家电产品都懂点
知道大有可为答主
回答量:2.3万
采纳率:66%
帮助的人:5078万
展开全部
代码上几个错误:
a)文件名的存储空间只有10个字符,而你输入的也是10个字符,字符串末尾要增加一个\0字符,所以你已经内存访问越界了,文件名数组习惯定义的大小是MAX_PATH,也就是250字符左右
b) 你使用的是不带文件路径的文件名,这样的文件名的具体位置依赖于”当前路径“,而很多人对当前路径的理解是错误的,它不是可执行文件所在位置,所以也许你看了不同位置的文件。你先试试输入完整路径再说
c)你在不停检查fp !=NULL,注意,除非你主动设置fp=NULL否则一旦它有值无论文件后续是否被关闭,它都不是NULL,所以只有fopen后那一个fp!=NULL有意义,其他都是错误
现在很多书都是垃圾,所以书照搬不是好标注,还是要好好理解语言,不要过分相信书
马拉松d61WX
2021-03-19 · TA获得超过14.6万个赞
知道大有可为答主
回答量:8355
采纳率:25%
帮助的人:224万
展开全部
这个大概率是软件出现了问题。你可以在文件中仔细的进行查找。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
海狮2D
2021-03-19 · TA获得超过3017个赞
知道大有可为答主
回答量:1904
采纳率:55%
帮助的人:903万
展开全部
文件没有内容的情况大致分为以下几种:
1,文件写入和打开的方式不一样,例如写入了2进制的0,但是使用记事本或其他类似的文本工具打开。建议检查文件属性,看文件的长度。
2,错误的使用了fprintf,fwrite,fflush,fopen,fclose。这类错误一般文件的长度为0。具体的需要参考代码。如果是Linux可以使用ltrace监控这些错误。
3,其他程序错误,例如多了或者少了*、&等符号。
4,书上的程序本身有错误,一本好书是非常重要的,如果发现的错误太多最好及时丢弃。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式