では、以下のフォーマット指定用マクロが定義されています。
以下のオブジェクトライクなマクロは、変換指定子を含む文字列リテラルに展開します。
変換指定子を含む文字列リテラルに展開され、長さ修飾子によって修正されることもあります。
これは、対応する整数型に変換する際に、フォーマットされた入出力関数の format 引数内で使用するのに適しています。
これらのマクロ名は、PRI (fprintf および fwprintf ファミリの文字列リテラル) または SCN (fscanf および fwscanf ファミリの文字列リテラル),220) の後に変換指定子が続き、その後に 7.20.1 の類似した型名に対応する名前が続くという一般的な形式をとる。これらの名前では、Nは§7.20.1 ''Integer types'' に記載されている型の幅を表す。例えば、PRIdFAST32 は、int_fast32_t型の整数の値を表示するためのフォーマット文字列として使用できる。
符号付き整数用のfprintfマクロ
符号なし整数用のfprintfマクロ
符号付き整数用のfscanfマクロ
符号なし整数用のfscanfマクロ
（言語処理系は）実装がで提供している各型について、対応するfprintfマクロを定義し、実装がその型に適したfscanf長さ修飾子を持たない限り、対応するfscanfマクロを定義しなければならない。
[https://paiza.io/projects/kpIhT_6r1DzK5eyWOmkGHw?language=c 例]
int main(void)
{
  uintmax_t i = UINTMAX_MAX; // this type always exists
  wprintf(L"The largest integer value is %#022" PRIxMAX "\n", i);
  return 0;
}
実行結果
The largest integer value is 0x0000ffffffffffffffff
最大幅の整数を操作する関数
intmax_t imaxabs(intmax_t j);
imaxdiv_t imaxdiv(intmax_t numer, intmax_t denom);
intmax_t strtoimax(const char * restrict nptr, char ** restrict endptr, int base);
uintmax_t strtoumax(const char * restrict nptr, char ** restrict endptr, int base);
intmax_t wcstoimax(const wchar_t *restrict nptr, wchar_t **restrict endptr, int base);
uintmax_t wcstoumax(const wchar_t *restrict nptr, wchar_t **restrict endptr, int base);
7.8.2 Functions for greatest-width integer types
ISO/IEC 9899:2017 § 7.8.2.1 ''The imaxabs function''。
形式 : 
1 #include 
intmax_t imaxabs(intmax_t j);
機能
imaxabs関数は、整数jの絶対値を計算します。
返却値
imaxabs関数は、絶対値を返します。
ISO/IEC 9899:2017 § 7.8.2.2 ''The imaxdiv function''。
形式 : 
1 #include 
imaxdiv_t imaxdiv(intmax_t numer, intmax_t denom);
機能
2 The imaxdiv function computes numer / denom and numer % denom in a single operation.
返却値
3 The imaxdiv function returns a structure of type imaxdiv_t comprising both the quotient and the
remainder. The structure shall contain (in either order) the members quot (the quotient) and rem
(the remainder), each of which has type intmax_t. If either part of the result cannot be represented,the behavior is undefined.
7.8.2.3 The strtoimax and strtoumax functions
形式 : 
1 #include 
intmax_t strtoimax(const char * restrict nptr,char ** restrict endptr, int base);
uintmax_t strtoumax(const char * restrict nptr,char ** restrict endptr, int base);
機能
2 The strtoimax and strtoumax functions are equivalent to the strtol, strtoll, strtoul, and
strtoull functions, except that the initial portion of the string is converted to intmax_t and
uintmax_t representation, respectively.
返却値
3 The strtoimax and strtoumax functions return the converted value, if any. If no conversion could
be performed, zero is returned. If the correct value is outside the range of representable values,INTMAX_MAX, INTMAX_MIN, or UINTMAX_MAX is returned (according to the return type and sign of the
value, if any), and the value of the macro ERANGE is stored in errno.
7.8.2.4 The wcstoimax and wcstoumax functions
形式 : 
1 #include  // for wchar_t
intmax_t wcstoimax(const wchar_t * restrict nptr,wchar_t ** restrict endptr, int base);
uintmax_t wcstoumax(const wchar_t * restrict nptr,wchar_t ** restrict endptr, int base);
機能
2 The wcstoimax and wcstoumax functions are equivalent to the wcstol, wcstoll, wcstoul, and
wcstoull functions except that the initial portion of the wide string is converted to intmax_t and
uintmax_t representation, respectively.
返却値
3 The wcstoimax function returns the converted value, if any. If no conversion could be performed, zero is returned. If the correct value is outside the range of representable values, INTMAX_MAX, INTMAX_MIN, or UINTMAX_MAX is returned (according to the return type and sign of the value, if any),and the value of the macro ERANGE is stored in errno.
[https://paiza.io/projects/_o3x1t3sxSWATer0QsDecA?language=c 実際値を表示するプログラム]: 
int main(void) {
  puts("");
}
実行結果: 
参考: 
COLS = %w(8 16 32 64 LEAST8 LEAST16 LEAST32 LEAST64 FAST8 FAST16 FAST32 FAST64 MAX PTR)
ROWS = %w(PRId PRIi PRIo PRIu PRIx PRIX SCNd SCNi SCNo SCNu SCNx)
puts <
int main(void) {
(< で定義されているマクロの値（一例）
|-
! ＼ !! #{COLS.map{|col| "*#{col}" }.join(" !! ")}
<
 は、ISO/IEC 9899:1999 (C99)で追加されました。