首先要说明的是这里并不是指删除C编译器里面的文件,呵呵,如果只是要删除那些文件的话,那就很简单,直接选中文件后按delete键就可以删除了,但是我们删除那些文件干嘛?我们还要用它写程序啊,呵呵。我在这里要说的是,怎样使用C语言编写程序来删除文件。
在C语言中,我们可以使用remove()函数来删除指定的文件,具体语法为:
Int remove(char *filename);其中filename是一个指向字符串的指针,该字符串可以组成有效的文件名,也可以包含路径说明。如果我们要删除D盘下的ABC.txt文件,我们就可以这样写:remove(“D:\ABC.txt”);
C语言remove()函数:删除文件或目录头文件:
#include
remove()函数用于删除指定的文件,其原型如下:
int remove(char * filename);
【参数】filename为要删除的文件名,可以为一目录。如果参数filename 为一文件,则调用unlink()处理;若参数filename 为一目录,则调用rmdir()来处理。
【返回值】成功则返回0,失败则返回-1,错误原因存于errno。
错误代码:EROFS 欲写入的文件为只读文件。EFAULT 参数filename 指针超出可存取内存空间。ENAMETOOLONG 参数filename 太长。ENOMEM 核心内存不足。ELOOP 参数filename 有过多符号连接问题。EIO I/O 存取错误。
【实例】下面的程序演示了如何使用remove()函数删除文件。
#include
int main(){
char filename[80];
printf("The file to delete:");
gets(filename);
if( remove(filename) == 0 )
printf("Removed %s.", filename);
else
perror("remove");
}
运行上述程序,首先声明用于保存文件名的字符数组变量,从控制台获取文件名,然后删除该文件,并根据删除结果输出相应的提示信息。
函数名: unlink
功 能: 删掉一个文件
用 法: int unlink(char *filename);
程序例:
#include
#include
int main(void)
{
FILE *fp = fopen("junk.jnk","w");
int status;
fprintf(fp,"junk");
status = access("junk.jnk",0);
if (status == 0)
printf("File exists\n");
else
printf("File doesn't exist\n");
fclose(fp);
unlink("junk.jnk");
status = access("junk.jnk",0);
if (status == 0)
printf("File exists\n");
else
printf("File doesn't exist\n");
return 0;
}