std::filesystem::temp_directory_path(3)

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::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
   tmpfile creates and opens a temporary, auto-removing file
                (function)
   current_path returns or sets the current working directory
   (C++17) (function)