VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 384|回复: 3

[交流] 这个报错的原因是什么

[复制链接]
91_avatar_middle
最佳答案
0 
在线会员 发表于 2019-8-22 21:33:36 | 显示全部楼层 |阅读模式
我已经成功的打开文件,查看fclose这个函数的返回值是int类型,我用int接受,感觉是正确的啊,可是运行的时候报错了,请哪位懂得帮我解答一下,小弟万分感谢
#include<stdio.h>
int main() {
        FILE *filep = fopen_s(&filep,"C:\\Users\\Administrator\\Desktop\\C","r");
        //FILE *filep = fopen("C:\\Users\\Administrator\\Desktop\\C","r");
       
        if (filep == NULL) {
                printf("文件打开失败");
                return -1;
        }
        printf("文件打开成功");
int num=fclose(filep);
printf("%d\n", num);
return 0;

}
}6PGNK7Q2YYXH@(YO7_BVJ9.png




上一篇:指针的访问
下一篇:如何将 两个 byte 的低位 转换成一个 十进制
84_avatar_middle
最佳答案
0 
在线会员 发表于 2019-8-24 05:08:16 | 显示全部楼层
1,需要打开的文件的扩展名也需要写出来,毕竟文件可以以不同的扩展名相同的名字存在,若无扩展名,文件判断出错
84_avatar_middle
最佳答案
0 
在线会员 发表于 2019-8-24 05:14:32 | 显示全部楼层
2,fopen_s的返回值问题,如果成功返回0,失败则返回相应的错误代码。你用指针接收了返回的值,指针就并不代表你是否打开文件,只是表示了返回值
84_avatar_middle
最佳答案
0 
在线会员 发表于 2019-8-24 05:22:35 | 显示全部楼层
由于filep不是指打开的文件,所以你无法fclose,另外FILE和fopen_s的返回值不匹配
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

×【发帖 友情提示】
1、请回复有意义的内容,请勿恶意灌水;
2、纯数字、字母、表情等无意义的内容系统将自动删除;
3、若正常回复后帖子被自动删除,为系统误删的情况,请重新回复其他正常内容或等待管理员审核通过后会自动发布;
4、感谢您对VC驿站一如既往的支持,谢谢合作!

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号 )|网站地图wx_jqr

GMT+8, 2020-10-30 00:30

Powered by CcTry.CoM

© 2009-2020 cctry.com

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