# std::formatter<std::thread::id>

From cppreference.com
< cpp‎ | thread‎ | thread‎ | id

Defined in header `<thread>` |  |
template< class CharT > struct formatter<std::thread::id, CharT>; |  | (since C++23)

The template specialization of std::formatter for the std::thread::id class allows users to convert a thread identifier to its textual representation using formatting functions.

### Format specification

The syntax of format specifications is:

fill-and-align﻿(optional) width﻿(optional) |  |

fill-and-align and width have the same meaning as in standard format specification. The default alignment is `>`.

The formatted output matches the output of `operator<<`, adjusted as appropriate for the format specifiers.

### Notes

Feature-test macro | Value | Std | Comment
--- | --- | --- | ---
`__cpp_lib_formatters` | 202302L | (C++23) | Formatting `std::thread::id` and std::stacktrace

### Example

Run this code

    #include <format>
    #include <iostream>
    #include <thread>

    int main()
    {
        std::thread::id this_id = std::this_thread::get_id();
        std::thread::id null_id;

        std::cout << std::format("current thread id: {}\n", this_id);
        std::cout << std::format("{:=^10}\n", null_id);
    }

Possible output:

    current thread id: 140046396632256
    ====0=====

### See also

formatter (C++20) | class template that defines formatting rules for a given type (class template)

Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/thread/thread/id/formatter&oldid=151276"