十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
使用feof()来判断,返回非0就是结束了。
我们提供的服务有:成都做网站、成都网站建设、微信公众号开发、网站优化、网站认证、阎良ssl等。为千余家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的阎良网站制作公司
if (feof(fp))
...... 此时就表明文件结束了,别再读了
理论上是可以自定义的,但是最好使用 sizeof 进行计算。
比如
fwrite(data,sizeof(data[0]), size_t count, FILE* stream);
首先程序并非在 return 时刻就结束运行咯,只是你自己写的代码的部分结束运行而已。如果你调试 windows 的程序,你会发现在 main 函数外层还有个 __main 函数包裹着,当然它会在结束的时刻调用一些别的函数将数据写入到文件里。包括动态库的载入,你的代码里也没有吧。你想想,你也没写 scanf 这些函数到你的程序里,那这些又是怎么样运行的呢。如果你想要实现相似的内容,可以试试 atexit 函数
IO.h确实是不标准的,它不能保证在win32环境下使用,所以,不推荐使用,也不值得学了。
你在代码首行这样写 #include"io.h"
如果不行的话,再把.h后缀去掉,
如果还不行,用工具depends打开io.h看看有没有上述函数。