我想读取命令行参数中给出的文件并在读取后将其删除。这就是我正在做的事情。
char *filename = argv[1];
char *outputfile = strcat(argv[1], ".cmp");
fd = open(argv[1], O_RDONLY);
chars = read(fd, buf, BUFFERSIZE);
fd1 = creat(outputfile, 0644);
write(fd1, buf, BUFFERSIZE);
close(fd1);
close(fd);
unlink(argv[1]);
如果我在命令行中给出“mytxt”,代码应该创建“mytxt.cmp”文件并删除“mytxt”,而不是删除“mytxt.cmp”,保持“mytxt”不变。为什么会这样?如何删除命令行参数中给出的文件。