# JSON_HAS_STD_FORMAT

```
#define JSON_HAS_STD_FORMAT /* value */
```

This macro indicates whether the standard library has support for `std::format`/`std::formatter` (that is, the `<format>` header). Possible values are `1` when supported or `0` when unsupported.

## Default definition

The default value is detected based on the preprocessor macros `JSON_HAS_CPP_20` and `__cpp_lib_format`.

When the macro is not defined, the library will define it to its default value.

## Notes

Enabled functionality

When this macro evaluates to `1`, the library provides a [`std::formatter<basic_json>`](https://json.nlohmann.me/api/basic_json/std_formatter/index.md) specialization so JSON values can be used directly with `std::format`.

## Examples

Example

The code below forces the library to disable support for `std::format`, even if the standard library would otherwise support it:

```
#define JSON_HAS_STD_FORMAT 0
#include <nlohmann/json.hpp>

...
```

## Version history

- Added in version 3.12.x.
