std::remove
提供: cppreference.com
ヘッダ <cstdio> で定義 | ||
int remove(constchar* fname ); | ||
fname
の指す文字列が表すファイルを削除します。
ファイルが現在のプロセスまたは他のプロセスによって現在開かれている場合、この関数の動作は処理系定義です (特に、 POSIX システムではそれがそのファイルへの最後のハードリンクであっても最後の実行中のプロセスがファイルを閉じるまでファイルシステムの空間は回収されなくともファイル名をリンク解除しますが、 Windows ではファイルを削除することはできません)。
目次 |
[編集]引数
fname | - | 削除するファイルを表すパスを格納しているヌル終端文字列を指すポインタ |
[編集]戻り値
成功した場合は 0、エラーが発生した場合は非ゼロの値。
[編集]ノート
POSIX はこの関数の動作について多数の追加の詳細を規定しています。
標準ライブラリは一組のイテレータと値を取る関数テンプレート std::remove も定義しています。 このオーバーロードは標準アルゴリズムのひとつです。
[編集]例
Run this code
#include <iostream>#include <fstream>#include <cstdio>int main(){bool ok =static_cast<bool>(std::ofstream("file1.txt").put('a'));// create fileif(!ok){std::perror("Error creating file1.txt");return1;}std::cout<<std::ifstream("file1.txt").rdbuf()<<'\n';// print file std::remove("file1.txt");// delete file bool failed =!std::ifstream("file1.txt");if(failed){std::perror("Error opening deleted file");return1;}}
出力例:
a Error opening deleted file: No such file or directory
[編集]関連項目
(C++17)(C++17) | ファイルまたは空のディレクトリを削除します ファイルまたはディレクトリおよびそのすべての内容を再帰的に削除します (関数) |
ファイルの名前を変更します (関数) | |
remove の C言語リファレンス |