c语言 读取文件不存在的问题

来源:百度知道 编辑:UC知道 时间:2024/05/04 22:44:27
c语言 fopen(filename, "r") 读取的文件不存在时如何不让系统显示
应用程序错误 “...”指令应用的“...”内存。该内存不能为read

我想用自己printf(“”);的内容来代替系统报错

谢谢!!~

首先应该清楚,文件不存在并不会报出““...”指令应用的“...”内存”这样的错误,这是你应用程序的问题。
如果想要判断文件是否存在,请检查fopen的返回值是否为NULL,为NULL即出错,然后通过errno全局变量(或函数)来检查具体的错误码,再根据错误码来显示具体的错误信息。

完整我觉得得这样

if((fp=fopen(filename,"r"))==NULL)
{
printf("文件不存在");
return; //加上这句使程序返回,要不打印后还会出现那个错误
}

FILE *fp;

if((fp=fopen(filename,"r"))==NULL) printf("文件不存在");