std::filesystem::temp_directory_path (3) - Linux Manuals

std::filesystem::temp_directory_path: std::filesystem::temp_directory_path

NAME

std::filesystem::temp_directory_path - std::filesystem::temp_directory_path

Synopsis


Defined in header <filesystem>
path temp_directory_path(); (1) (since C++17)
path temp_directory_path( std::error_code& ec );


Returns the directory location suitable for temporary files.

Parameters


(none)

Return value


A directory suitable for temporary files. The path is guaranteed to exist and to be a directory. The overload that takes error_code& argument returns an empty path on error.

Exceptions


The overload that does not take a std::error_code& parameter throws filesystem_error on underlying OS API errors, constructed with path to be returned as the first path argument and the OS error code as the error code argument. The overload taking a std::error_code& parameter sets it to the OS API error code if an OS API call fails, and executes ec.clear() if no errors occur. Any overload not marked noexcept may throw std::bad_alloc if memory allocation fails.

Notes


On POSIX systems, the path may be the one specified in the environment variables TMPDIR, TMP, TEMP, TEMPDIR, and, if none of them are specified, the path "/tmp" is returned.
On Windows systems, the path is typically the one returned by GetTempPath

Example


// Run this code


  #include <iostream>
  #include <filesystem>
  namespace fs = std::filesystem;
  int main()
  {
      std::cout << "Temp directory is " << fs::temp_directory_path() << '\n';
  }

Possible output:


  Temp directory is "C:\Windows\TEMP\"

See also


        creates and opens a temporary, auto-removing file
tmpfile (function)