# std::source_location::file_name

From cppreference.com
< cpp‎ | utility‎ | source location

constexpr const char* file_name() const noexcept; |  | (since C++20)

Returns the name of the current source file represented by this object, represented as a null-terminated byte string.

### Parameters

(none)

### Return value

The name of the current source file represented by this object, represented as a null-terminated byte string.

### Example

Run this code

    #include <iostream>
    #include <source_location>

    void print_this_file_name(
        std::source_location location = std::source_location::current())
    {
        // Name of file that contains the call site of this function.
        std::cout << "File: " << location.file_name() << '\n';
    }

    int main()
    {
    #line 1 "cppreference.cpp"
        print_this_file_name();
    }

Output:

    File: cppreference.cpp

### See also

line | return the line number represented by this object (public member function)
column | return the column number represented by this object (public member function)
function_name | return the name of the function represented by this object, if any (public member function)
source_file | gets the name of the source file that lexically contains the expression or statement whose evaluation is represented by the `stacktrace_entry` (public member function of `std::stacktrace_entry`)
Filename and line information

Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/utility/source_location/file_name&oldid=150209"