Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
std::remove(3)		      C++ Standard Libary		std::remove(3)

NAME
       std::remove - std::remove

Synopsis
	  Defined in header <cstdio>
	  int remove( const char* fname	);

	  Deletes the file identified by character string pointed to by	fname.

	  If the file is currently open	by the current or another process, the
       behavior	of
	  this	function  is implementation-defined (in	particular, POSIX sys-
       tems unlink the
	  file name, although the file system space is not reclaimed  even  if
       this was	the last
	  hardlink to the file until the last running process closes the file,
       Windows does
	  not allow the	file to	be deleted)

Parameters
	  fname	 -  pointer  to	 a  null-terminated string containing the path
       identifying the file
		  to delete

Return value
	  0 upon success or non-zero value on error.

Notes
	  POSIX	specifies many additional details for  the  behavior  of  this
       function.

	  The  standard	 library  also defines a function template std::remove
       taking a	pair of
	  iterators and	a value, this overload is one of  the  standard	 algo-
       rithms.

Example
       // Run this code

	#include <iostream>
	#include <fstream>
	#include <cstdio>
	int main()
	{
	    bool  ok = static_cast<bool>(std::ofstream("file1.txt").put('a'));
       // create file
	    if(!ok) { std::perror("Error creating file1.txt"); return 1; }
	    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"); return 1;
       }
	}

Possible output:
	a
	Error opening deleted file: No such file or directory

See also
	  remove     removes a file or empty directory
	  remove_all removes a file or directory and all its contents,	recur-
       sively
	  (C++17)    (function)
	  (C++17)
	  rename     renames a file
		     (function)

http://cppreference.com		  2022.07.31			std::remove(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::remove&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help