#define _PRINTF_NAN_LEN_MAX implementation-defined
概要
printf系関数がNaN (非数) を出力する際に生成しうる、最大の文字数を表す整数定数。
%f・%e・%gなどの浮動小数点変換でNaNを出力する場合、処理系はnanやnan(n-char-sequence)形式の文字列を生成する。このマクロは、その文字列の最大長を表す。出力先バッファのサイズを決定する際に利用できる。
C23で<stdio.h>に追加されたマクロであり、C++26で<cstdio>に取り込まれた。
備考
- 規格上、値は
3以上であることが規定されている
例
出力例
nan
バージョン
言語
- C++26
処理系
- Clang: 22 ❌
- GCC: 16.1 ❌
- Visual C++: 2026 Update 2 ❌
参照
- P3348R4 C++26 should refer to C23 not C17
- C++26がC23を参照するようになり、このマクロが
<cstdio>に追加された
- C++26がC23を参照するようになり、このマクロが