コマンドライン引数で指定されたファイルを読み取り、読み取り後に削除したかったのです。これが私がやっていることです。
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」をそのままにして「mytxt.cmp」を削除しています。なぜそうなのですか?コマンドライン引数で指定されたファイルを削除するにはどうすればよいですか?