が指すファイル/ディレクトリを削除する必要がありますpath
。だから私は を呼び出しremove(path)
、これが で失敗した場合ENOTEMPTY
、それは空でないディレクトリであり、それに応じて処理します。
status = remove(path);
if (status == -1 && errno == ENOTEMPTY)
ftw(path, recursive_dir_delete, 64);
コンパイルすると、ENOTEMPTY undeclared
. ENOTEMPTY
#includeした unistd.h ( man 2 rmdir
) で定義されていますが、それでもエラーが発生します。errno が に設定されているかどうかを確認する正しい方法は何ENOTEMPTY
ですか?
gcc 4.6.3、64 ビット Ubuntu。