remove(删除文件)

相关函数 link,rename,unlink

表头文件 #include

定义函数 int remove(const char * pathname);

函数说明 remove()会删除参数pathname指定的文件。如果参数pathname为一文件,则调用unlink()处理,若参数pathname为一目录,则调用rmdir()来处理。请参考unlink()与rmdir()。

返回值 成功则返回0,失败则返回-1,错误原因存于errno。

错误代码 EROFS 欲写入的文件存在于只读文件系统内

EFAULT 参数pathname指针超出可存取内存空间

ENAMETOOLONG 参数pathname太长

ENOMEM 核心内存不足

ELOOP 参数pathname有过多符号连接问题

EIO I/O 存取错误。

可以结合perror函数实现,返回错误的具体信息

if( remove(filename) == 0 )

printf("Removed %s.", filename);

else

perror("remove");

}

perror ( )用 来 将 上 一 个 函 数 发 生 错 误 的 原 因 输 出 到 标 准 错误 (stderr) 。参数 s 所指的字符串会先打印出,后面再加上错误原因字符串。此错误原因依照全局变量errno 的值来决定要输出的字符串。

在库函数中有个error变量,每个error值对应着以字符串表示的错误类型。当你调用"某些"函数出错时,该函数已经重新设置了error的值。perror函数只是将你输入的一些信息和现在的error所对应的错误一起输出。

remove错误可能原因

1

文件路径

注意:

strct函数应该加上/

Logo

更多推荐